Home  >  Article  >  Backend Development  >  Introduction to how to configure PHP at runtime

Introduction to how to configure PHP at runtime

不言
不言Original
2018-08-30 17:37:111630browse

This article brings you an introduction to the method of configuring PHP at runtime. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

The PHP configuration file php.ini will be read when PHP is started. The server module version of PHP is only read once when the web server is started, while the CGI and CLI versions of PHP are read every time it is called. . Environment variables can be used in the php.ini file. After PHP5.1, variables that already exist in the ini can also be referenced in the ini file. When reading the php.ini file, search for the php.ini file in the following order:

  1. The location specified by the SAPI module (PHPIniDir directive in apache2, -c command line for CGI and CLI options, php_ini parameters in NSAPI, PHP_INI_PATH environment variable in THTTPD, etc.).

  2. Environment variable PHPRC, the order before PHP5.2 is after the registry key value.

  3. Starting from PHP5.2, in Windows system, you can set different php.ini file locations for different PHP versions. You will press [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z], [ Check the registry directory in the order of HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y] and [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x], where x, y, and z respectively represent the major version number, minor version number, and release version number of PHP. The first IniFilePath value found in any directory is used as the location of php.ini.

  4. The value of IniFilePath in the registry [HKEY_LOCAL_MACHINE\SOFTWARE\PHP] in the Windows system.

  5. Except CLI, the current working directory.

  6. The web server directory in SAPI mode, or the directory where PHP is located under Windows.

  7. The windows system directory (c:\windows or c:\winnt) under the windows system, or the location specified by the --with-config-file-path option when compiling.

If php-.ini exists, it will be used instead of php.ini, where refers to the name of the current SAPI module, such as CLI, name for php-cli.ini. The name of the SAPI can be obtained through the function php_sapi_name().

PHP5.3 supports .htaccess style ini files for each directory. Such files can only be processed by CGI/FastCGI SAPI. This feature makes PECL’s htscanner extension invalid. If you use Apache, use the .htaccess file to have the same effect. In addition to the php.ini file, ini files will also be scanned starting from the directory where the executed PHP file is located and going up to the web root directory specified by $_server['DOCUMENT_ROOT']. If the executed PHP file is outside the web root directory, only the directory where the executed PHP file is located will be scanned. In .user.ini style ini files, only the ini configurations of PHP_INI_PERDIR and PHP_INI_USER modes can be recognized.

For the .user.ini file, there are two configurations for controlling the use of ini files:

  1. user_ini.filename: Specifies the ini file that PHP looks for in the directory Name. If it is an empty string, no search will be performed. The default value is .user.ini.

  2. user_ini.cache_ttl: Specifies the time interval for re-reading the ini file, in seconds, the default value is 300 (5 minutes).

Related recommendations:

A brief introduction to process control statements in php (with examples)

eclipse runs php time, run configuration, and debug configuration settings

The above is the detailed content of Introduction to how to configure PHP at runtime. 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