Describe the basic concepts of the PHP framework (I)

Source: Internet
Author: User
Tags php framework

LAMP is an open Resource Network Development Platform Based on Linux, Apache, MySQL, and PHP. This term comes from Europe, where these programs are often used as a standard development environment. The name comes from the first letter of each program. Each program complies with the open source code standards in its ownership. Linux is an open system, Apache is the most common network server, and MySQL is a relational database with an additional network management tool; PHP is a popular Object scripting language. It contains excellent features of most other languages to make network development more effective. In Windows, developers use the tools in these Linux environments as WAMP. Although these open-source code programs are not specifically designed to work with several other programs, they all have many common characteristics because they are open-source software with a large impact, as a result, these components are often used together. Over the past few years, the compatibility of these components has been constantly improved, and the application of these components has become more common. They have created some extension functions to improve the collaboration between different components. Currently, these products are included by default in almost all Linux releases. The Linux operating system, Apache server, MySQL database, and Perl, PHP, or Python language constitute a powerful Web application platform. With the rapid development of open source, open source code LAMP has been integrated with J2EE and. net commercial software has formed a three-pronged trend, and the software development project has a low investment cost in software, so it has received the attention of the entire IT industry. More than 70% of website traffic is provided by LAMP, which is the most powerful website solution. OOP Object-Oriented Programming (Object Oriented Programming, OOP, Object-Oriented Programming) is a computer Programming architecture. One basic principle of OOP is that a computer program is composed of a single unit or object that can act as a subroutine. OOP has achieved three main objectives of Software Engineering: reusability, flexibility, and scalability. To achieve the overall operation, each object can receive, process, and send information to other objects. OOP mainly includes the following concepts and components: components-data and functions are formed together in a running computer program. components are the basis of modules and structures in OOP computer programs. Abstraction-the Program has the ability to ignore some aspects of the information being processed, that is, the ability to focus on the main aspects of information. Encapsulation-it is also called Information encapsulation: to ensure that the component does not change the internal status of other components in an unpredictable way; only in those components that provide the internal state change method, to access its internal status. Each type of component provides an interface for contacting other components and specifies the method for calling other components. Polymorphism-the reference and class assembly of components involve many other different types of components, and the result of referencing components must be based on the actual call type. Inheritance-allows sub-components to be created based on existing components, which unifies and enhances polymorphism and encapsulation. Typically, classes are used to group components, and new classes can be defined as extensions of existing classes, so that classes can be organized into a tree or mesh structure, this reflects the versatility of the action. Because of abstraction, encapsulation, reusability, and ease of use, component-based programming has become particularly popular in scripting languages. MVC is a design pattern that forcibly separates the input, processing, and output of an application. MVC applications are divided into three core components: Model (M), view (V), and controller (C). They process their own tasks. View: view is the interface on which the user sees and interacts with it. For older Web applications, a view is an interface composed of HTML elements. In New Web applications, HTML still plays an important role in the view, however, some new technologies have emerged, including Adobe Flash and some identification languages and Web services such as XHTML, XML/XSL, and WML. How to process the application interface becomes increasingly challenging. One major benefit of MVC is that it can process many different views for your applications. In fact, there is no real processing in the view. Whether the data is stored online or an employee list, as a view, it is just a way to output data and allow users to manipulate it. Model: model indicates enterprise data and business rules. Among the three components of MVC, the model has the most processing tasks. For example, it may use component objects such as EJBs and ColdFusion Components to process databases. The data returned by the model is neutral, that is, the model has nothing to do with the data format, so that a model can provide data for multiple views. Because the Code applied to the model can be reused by multiple views only once, code duplication is reduced. Controller: the Controller accepts user input and calls models and views to fulfill user requirements. Therefore, when you click a hyperlink on a Web page and send an HTML form, the controller does not output anything or process anything. It only receives the request and determines which model component is called to process the request, and then determines which view is used to display the data returned by the model for processing. Now let's summarize the MVC processing process. First, the Controller receives user requests and decides which model should be called for processing. Then, the model uses the business logic to process user requests and return data, finally, the controller uses the corresponding view to format the data returned by the model and presents it to the user through the presentation layer. CURD is a acronym in database technology. Generally, the basic functions of various parameters developed by a project are CURD. It represents Create, Update, Read, and Delete operations. CURD defines the basic atomic operations used to process data. The reason for increasing CURD to a technical difficulty is that it completes a summary-related activity involving performing CURD operations in multiple database systems, its performance may vary greatly with the changes in data relationships. CURD does not necessarily use the create, update, read, and delete methods in specific applications, but their functions are consistent. For example, ThinkPHP uses the add, save, select, and delete methods to represent the CURD operations of the model. A single portal a single portal usually refers to a project or application with a unified (but not necessarily unique) Portal file. That is to say, all function operations of the project are performed through this portal file, in addition, the entry file is usually executed in the first step. The advantage of a single portal is that the project is relatively standardized as a whole, because the same portal usually has the same rules between different operations. In addition, the advantage of a single portal is that the control is more flexible, because the interception is convenient. For example, some permission control and user logon judgment and operations can be handled in a unified manner. Or some people may worry that all websites will be accessed through an entry file, which may put too much pressure on them. In fact, this is a worrying idea. ORM Object-relational ing (ORM) is developed with the development of object-oriented software development methods. Object-Oriented development is the mainstream development method in today's enterprise-level application development environment. Relational databases are the mainstream data storage systems that permanently store data in enterprise-level application environments. Objects and relational data are two forms of business entities. business entities are represented as objects in the memory and relational data in the database. Objects in the memory have associations and inheritance relationships. In the database, relational data cannot directly express many-to-many associations and inheritance relationships. Therefore, the object-relational ing (ORM) system generally exists in the form of middleware, mainly to map program objects to relational database data. Object-Oriented development is based on the basic principles of Software Engineering (such as coupling, aggregation, and encapsulation), while relational databases are developed from mathematical theories, there are significant differences between the two sets of theories. To solve this mismatch, the object link ing technology emerged.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.