Futásidejű beállítások
Table of Contents
A konfigurációs állomány
A konfigárós fájl (PHP 3-ban php3.ini, PHP 4-től pedig egyszerűen php.ini) beolvasása a PHP indulásakor történik meg. A szervermodul verziókban ez csak egyszer történik meg, ammikor a szerver elindul. A CGI és CLI változatok esetén minden hívás esetén megtörténik
A php.ini-t sorrendben a következő helyeken keresi:
-
SAPI modul specifikus helyen (Apache 2 esetén a PHPIniDir direktíva, CGI és CLI esetén -c parancssori opció, NSAPI esetén php_ini paraméter, THTTPD esetén PHP_INI_PATH környezeti változó határozza meg)
-
HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath (Windows Registry)
-
A PHPRC környezeti változó
-
Aktuális könyvtár (CLI esetén)
-
A webszerver könyvtára (SAPI modulok esetén), vagy a PHP könyvtára (egyéb esetben Windows-on)
-
Windows könyvtár (C:\windows vagy C:\winnt) (Windows esetén), vagy a --with-config-file-path fordítási opció
Ha a php-SAPI.ini fájl létezik, (ahol SAPI a használt SAPI, vagyis a fájlnév például php-cli.ini vagy php-apache.ini), ezt fogja a php.ini helyett használni. A SAPI neve a php_sapi_name() függvénnyel kérhető le.
Note: Az Apache webszerver induláskor a gyökérkönyvtárra vált, ezért a PHP a gyökérkönyvtárból olvassa be a php.ini-t, ha létezik.
A kiterjesztések által használt php.ini direktívák a megfelelő kiterjesztés oldalain vannak dokumentálva. Az alapvető direktívák listája a függelékben található. Valószínűleg nincs minden PHP direktíva dokumentálva ebben a kézikönyvben. A PHP verziódban alkalmazható direktívák teljes listáját megtalálod az elég jól dokumentált php.ini fájlban, vagy » a legfrissebb php.ini-t a CVS-ben találod meg.
Example#1 php.ini példa
; egy nem idézőjelek között lévő pontosvessző (;) után lévő szöveg ; az adott sorban figyelmen kívül lesz hagyva [php] ; a szekció jelölők (szögletes zárójelek között lévő szövegek) ; szintén figyelmen kívül lesznek hagyva ; A logikai értékek lehetnek ; true, on, yes ; vagy false, off, no, none register_globals = off track_errors = yes ; a stringeket macskakörmök közé teheted include_path = ".:/usr/local/lib/php" ; a visszaperjelek normális karaktereknek számítanak include_path = ".;c:\php\lib"