downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

Where a configuration setting may be set> <The configuration file
[edit] Last updated: Fri, 19 Apr 2013

view this page in

.user.ini files

Since PHP 5.3.0, PHP includes support for .htaccess-style INI files on a per-directory basis. These files are processed only by the CGI/FastCGI SAPI. This functionality obsoletes the PECL htscanner extension. If you are using Apache, use .htaccess files for the same effect.

In addition to the main php.ini file, PHP scans for INI files in each directory, starting with the directory of the requested PHP file, and working its way up to the current document root (as set in $_SERVER['DOCUMENT_ROOT']). In case the PHP file is outside the document root, only its directory is scanned.

Only INI settings with the modes PHP_INI_PERDIR and PHP_INI_USER will be recognized in .user.ini-style INI files.

Two new INI directives, user_ini.filename and user_ini.cache_ttl control the use of user INI files.

user_ini.filename sets the name of the file PHP looks for in each directory; if set to an empty string, PHP doesn't scan at all. The default is .user.ini.

user_ini.cache_ttl controls how often user INI files are re-read. The default is 300 seconds (5 minutes).



add a note add a note User Contributed Notes .user.ini files - [5 notes]
up
-1
interfaSys
2 years ago
This article should be made clearer.
".htaccess-style INI files" meant to me that the ini settings had to follow the syntax used in .htaccess, but this is not the case!

You have to use
register_globals=on
and not
php_flag register_globals on

Also, the changes can take a while to propagate to all processes if you have a long process time out.
Restarting php-fpm can give you an answer quicker :)
up
-1
showerheadsuk at hotmail dot com
2 years ago
Currently .user.ini files aren't read when using php-fpm, instead you can use [HOST] and [PATH] sections in your main php.ini to set per directory and per domain settings: http://us3.php.net/manual/en/ini.sections.php
up
0
philsward at gmail dot com
21 days ago
If you have no idea what "PHP_INI_PERDIR" or "PHP_INI_USER" are or how they relate to setting a .user.ini file, take a look at the ini.list page: http://www.php.net/manual/en/ini.list.php

Basically, anything in the "Changeable" column labeled as PHP_INI_SYSTEM can't be set in the .user.ini file (so quit trying).  It can ONLY be set at the main php.ini level.
up
-2
Dolphyn
1 year ago
As of PHP 5..3.6, applicable .user.ini files are *not* listed or identified in phpinfo() output.

A .user.ini file can be in effect even when phpinfo() shows "additional .ini files parsed: (none)"
up
-3
Dolphyn
11 months ago
Apparently the .user.ini file cannot be used to add dynamic extensions. For example, "extension=php_pdo_mysql.dll" has no effect in a .user.ini file (as of PHP 5.3.10 using FastCGI on IIS 6).

 
show source | credits | stats | sitemap | contact | advertising | mirror sites