Home >PHP Framework >ThinkPHP >What framework is thinkphp?
ThinkPHP was born to simplify enterprise-level application development and agile WEB application development. It was first born in early 2006, and was officially renamed ThinkPHP on New Year's Day 2007, and was released under the Apache2 open source agreement. ThinkPHP has been adhering to the simple and practical design principle since its birth. While maintaining excellent performance and minimal code, it also focuses on ease of use. And it has many original functions and features. With the active participation of the community team, it is continuously optimized and improved in terms of ease of use, scalability and performance.
ThinkPHP is a fast, compatible and simple lightweight domestic PHP development framework. It was born in early 2006. It was originally named FCS. It was officially renamed ThinkPHP on New Year's Day in 2007. It is released under the Apache2 open source agreement and transplanted from the Struts structure. It has made improvements and improvements, and also borrowed many excellent foreign frameworks and models, using object-oriented development structure and MVC model, integrating the ideas of Struts and TagLib (tag library), RoR's ORM mapping and ActiveRecord model.
ThinkPHP can support server environments such as windows/Unix/Linux. The official version requires PHP5.0 or above. It supports MySql, PgSQL, Sqlite databases and PDO extensions. The ThinkPHP framework itself has no special module requirements. The specific application system operating environment requirements depend on the modules involved in development.
As an overall development solution, ThinkPHP can solve most needs in application development, because it includes the underlying architecture, compatibility processing, base class library, database access layer, template engine, caching mechanism, and plug-ins Mechanism, role authentication, form processing and other commonly used components, and it is more convenient for cross-version, cross-platform and cross-database transplantation. And each component is carefully designed and perfected, and the application development process only needs to focus on your business logic.
Features
Easy to use
Model (M): The definition of the model is completed by the Model class. The Model class is located in the LibModel directory under the project directory.
Controller (C): Application controller (core controller) and Action controller both assume the role of controller. The difference is that Action controller completes the business process, while application controller (App class) is responsible for Scheduling control. The Action controller is located in the LibAction directory under the project directory.
View (V): The implementation of the template is independent of the frame, and is 100% separated, and can be previewed and produced independently. The template directory is located in the Tpl directory under the project directory.
Original mechanism
ThinkTemplate is a compiled template engine that uses XML tag library technology. It supports two types of template tags and uses dynamic compilation and caching technology. , and supports custom tag libraries.
Its features include:
1) Supports mixed definition of XML tag library and ordinary tags;
2) Compile once and run directly next time without recompiling;
3) After the template file is updated, the template cache is automatically updated;
4) The template cache file of the current operation is automatically loaded without specifying the template file name;
5) Encoding is supported Conversion and Content-Type replacement;
6) Template variable output prefix support to avoid variable name conflicts;
7) Template constant replacement, no need to set template variables;
8 ) Supports variable combination regulator and formatting functions;
9) Supports replacement of other template engine plug-ins;
10) Supports obtaining template page content.
This article comes from the ThinkPHP framework technical article column: http://www.php.cn/phpkj/thinkphp/
The above is the detailed content of What framework is thinkphp?. For more information, please follow other related articles on the PHP Chinese website!