Home  >  Article  >  PHP Framework  >  How to replace the entry in thinkphp

How to replace the entry in thinkphp

藏色散人
藏色散人Original
2022-12-07 09:37:271738browse

Thinkphp method to replace the entry: 1. Add the constant definition "define('BUILD_LITE_FILE',true);" to the entry file; 2. Modify the framework entry file in the original application entry file to "require './Runtime/lite.php';"; 3. Copy the lite.php file to the same directory as the application entry file, and directly rename it to index.php.

How to replace the entry in thinkphp

#The operating environment of this tutorial: Windows 7 system, thinkphp version 3.2, Dell G3 computer.

thinkphp How to replace the entry?

Thinkphp deployment/replacement entry

Replacement entry

3.2 version supports generating Lite according to the current running environment file, which can replace the framework's entry file or application entry file to improve operating efficiency.

Our recommendation is to generate Lite files after turning off debug mode in the production environment.

Note that the current SAE platform does not support direct generation of Lite files.

Generate Lite file

To generate a Lite file, you need to add constant definitions to the entry file:

define('BUILD_LITE_FILE',true);

By default, one will be generated under the Runtime directory after running again lite.php file.

If you need to modify the location or name of the Lite file, you can add the following configuration in the application configuration file:

'RUNTIME_LITE_FILE'=> APP_PATH.'lite.php'

After configuration, the location of the generated Lite file is APP_PATH.'lite.php '.

The compiled file content of the Lite file is the system default. If you want to change or add other compiled files, you can define the compiled list file externally. For example: We add lite.php under the application configuration directory and define it as follows :

return array(
    THINK_PATH.'Common/functions.php',
    COMMON_PATH.'Common/function.php',
    CORE_PATH . 'Think'.EXT,
    CORE_PATH . 'Hook'.EXT,
    CORE_PATH . 'App'.EXT,
    CORE_PATH . 'Dispatcher'.EXT,
    CORE_PATH . 'Model'.EXT,
    CORE_PATH . 'Log'.EXT,
    CORE_PATH . 'Log/Driver/File'.EXT,
    CORE_PATH . 'Route'.EXT,
    CORE_PATH . 'Controller'.EXT,
    CORE_PATH . 'View'.EXT,
    CORE_PATH . 'Storage'.EXT,
    CORE_PATH . 'Storage/Driver/File'.EXT,
    CORE_PATH . 'Exception'.EXT,
    BEHAVIOR_PATH . 'ParseTemplateBehavior'.EXT,
    BEHAVIOR_PATH . 'ContentReplaceBehavior'.EXT,
);

All files defined in the lite.php file will be included in the compilation cache of the Lite file. You can also modify the generated lite file.

If you modify the framework file, application functions and configuration files, you need to delete the Lite file and regenerate it.

Since cloud platforms such as SAE do not support file writing, direct generation of Lite files is not supported.

Replacement Entry

Lite files can be used to replace framework entry files or application entry files.

Replace the framework entry file

After the Lite file is generated, you can modify the framework entry file in the original application entry file as follows:

require './ThinkPHP/ThinkPHP.php';
// 改成
require './Runtime/lite.php';

After replacing the Lite file, apply Compilation cache is no longer needed.

Replace the application entry file

If your entry file has no other code and logic, you can also directly access the lite.php file as the application's entry file. Copy the lite.php file to the same directory as the application entry file, and rename it directly to index.php for normal access as before (the original application entry file can be backed up for use when regenerating the Lite file).

Recommended learning: "thinkPHP Video Tutorial"

The above is the detailed content of How to replace the entry in thinkphp. For more information, please follow other related articles on the PHP Chinese website!

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