Home >Backend Development >PHP Tutorial >Analysis of ThinkPHP project group configuration method

Analysis of ThinkPHP project group configuration method

WBOY
WBOYOriginal
2016-07-29 08:56:301144browse

The example in this article describes the ThinkPHP project group configuration method. Share it with everyone for your reference, as follows:

Overview of project grouping

Project grouping is an important mechanism of ThinkPHP. The project grouping function can merge multiple previous projects into one project. Public files can be reused, but each Each group can have its own independent configuration files, public files, language packs, etc.

Take an ordinary website as an example. If project grouping is not used, the frontend of the website (the part provided for users to browse) is usually treated as a project. The backend management part of the website may have independent configuration files, CSS files, templates, etc., so it is managed as another project. But in fact, both projects are the content of the website, and they can share some content such as database configuration files and even some model classes and cross-project operations.

Project grouping can effectively solve the commonality and individuality issues between projects under the same system.

Project grouping configuration

Perform simple project grouping configuration in the system configuration file (Config/config.php) to enable project grouping.

There are five configurations related to the project grouping mode:

Configuration options Description Examples or suggestions
APP_GROUP_LIST A list of all names of the project group. If not set, it means that the project is not enabled. Grouping mode 'APP_GROUP_LIST'=>'Home,Admin,User,Blog',
DEFAULT_GROUP Default project group name, the system default is Home 'DEFAULT_GROUP' =>'Home',
APP_GROUP_DEPR The separator between project groups, the default is . (dot), used for separation in A function, D function and routing configuration It is recommended to default
TMPL_FILE_DEPR Modules and operations in template files The separator between them, the default is /, is only valid for project group deployment It is recommended to default, you can use the U method to automatically generate the URL
VAR_GROUP Get the variable of the project group name, the default is g index.php ?g=Admin&m=Index&a=edit, it is recommended to default to

When TMPL_FILE_DEPR is configured as _, in terms of Admin group Index module add operation, the corresponding template file is from the original:

Tpl/default/Admin /Index/add.html

is changed to:

Tpl/default/Admin/Index_add.html

Through this configuration, the template directory structure is reduced by one directory.

Tip: TMPL_FILE_DEPR is also the delimiter between the grouped language definitions and the language file in the language file.

Among the above configuration options, to enable grouping, APP_GROUP_LIST must be set, and other options must be configured according to the actual situation.

Project Group Personalized Configuration

If you want to add a unique personalized configuration to the grouped projects, you can create a directory with the same name as the project group under the configuration directory Conf (the directory naming format is: the first letter of the group name is capitalized + the rest lowercase letters), and define a config.php configuration file in the directory. For example, the personalized configuration file of the Admin project:

Conf/Admin/config.php

When there is a config.php file defined in the directory with the group name, every time the group is accessed, the system will automatically load the independent configuration of the group and Overrides the setting of the same option in the public configuration.

Readers who are interested in more thinkPHP-related content can check out the special topics of this site: "ThinkPHP Getting Started Tutorial", "ThinkPHP Common Methods Summary", "Smarty Template Basic Tutorial" and "PHP Template Technology Summary".

I hope this article will help you design PHP programs based on the ThinkPHP framework.

The above has introduced the analysis of the ThinkPHP project group configuration method, including aspects of the content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn