Jak znaleźć php.plik ini używany przez linię poleceń?
Muszę włączyć pdo_mysql w moim środowisku EasyPhp, więc poszedłem do php.plik ini i nie zawiera następującej linijki:
extension=php_pdo_mysql.dll
Niestety nadal mam ten sam problem.
Używam CLI więc przypuszczam, że muszę zlokalizować php.plik INI używany przez CLI. Jak mogę go znaleźć? 13 answers
Just run php --ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-19 07:11:40
Możesz uzyskać pełne phpinfo()
używając :
php -i
A tam jest plik php.ini
użyty :
$ php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
W systemie Windows find
zamiast:
php -i|find/i"configuration file"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-16 10:50:14
php --ini
Poda ci wszystkie szczegóły dotyczące ścieżki użycia i możliwych plików ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-13 12:11:45
Możesz użyć get_cfg_var('cfg_file_path') do tego:
Aby sprawdzić, czy system używa pliku konfiguracyjnego, spróbuj pobrać wartość ustawienia konfiguracyjnego cfg_file_path. Jeśli jest to dostępne, używany jest plik konfiguracyjny.W przeciwieństwie do phpinfo() powie, czy nie znalazła/nie użyła php.ini w ogóle.
var_dump( get_cfg_var('cfg_file_path') );
I można po prostu Ustaw lokalizację php.ini . Używasz wersji wiersza poleceń, więc używając parametru -c
możesz może określić lokalizację, np.
php -c /home/me/php.ini -f /home/me/test.php
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-05-01 16:06:35
Uruchom php --ini
w terminalu, otrzymasz wszystkie szczegóły dotyczące plików ini
[root@tamilan src]# php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/apc.ini,
/etc/php.d/bcmath.ini,
/etc/php.d/curl.ini,
/etc/php.d/dba.ini,
/etc/php.d/dom.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/gd.ini,
/etc/php.d/imap.ini,
/etc/php.d/json.ini,
/etc/php.d/mbstring.ini,
/etc/php.d/memcache.ini,
/etc/php.d/mysql.ini,
/etc/php.d/mysqli.ini,
/etc/php.d/pdo.ini,
/etc/php.d/pdo_mysql.ini,
/etc/php.d/pdo_sqlite.ini,
/etc/php.d/phar.ini,
/etc/php.d/posix.ini,
/etc/php.d/sqlite3.ini,
/etc/php.d/ssh2.ini,
/etc/php.d/sysvmsg.ini,
/etc/php.d/sysvsem.ini,
/etc/php.d/sysvshm.ini,
/etc/php.d/wddx.ini,
/etc/php.d/xmlreader.ini,
/etc/php.d/xmlwriter.ini,
/etc/php.d/xsl.ini,
/etc/php.d/zip.ini
Aby uzyskać więcej informacji, użyj polecenia pomocy php --help
wyświetli wszystkie możliwe opcje.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-03 07:29:39
Jeśli chcesz załadować wszystkie pliki konfiguracyjne, to powie Ci:
php -i | grep "\.ini"
Niektóre systemy ładują rzeczy z więcej niż jednego pliku ini. Na moim systemie ubuntu wygląda to tak:
$ php -i | grep "\.ini"
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
Scan this dir for additional .ini files => /etc/php5/cli/conf.d
additional .ini files parsed => /etc/php5/cli/conf.d/apc.ini,
/etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/gd.ini,
/etc/php5/cli/conf.d/mcrypt.ini,
/etc/php5/cli/conf.d/memcache.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/mysqli.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-05-01 17:13:27
Czasami rzeczy nie zawsze są takie, jak się wydają, jeśli chodzi o pliki konfiguracyjne w ogóle. Więc tutaj stosuję moje zwykłe metody do sprawdzania, jakie pliki są otwierane przez proces.
Używam bardzo potężnego i użytecznego programu wiersza poleceń o nazwie strace aby pokazać mi, co naprawdę dzieje się za moimi plecami!
$ strace -o strace.log php --version
$ grep php.ini strace.log
Strace wykopuje wywołania jądra (systemu), które wykonuje Twój program i wrzuca dane wyjściowe do pliku określonego przez-o
Jest łatwy w użyciu grep do wyszukiwanie wystąpień php.ini w tym dzienniku. To dość oczywiste, patrząc na następującą typową odpowiedź, aby zobaczyć, co się dzieje.
open("/usr/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/php.ini", O_RDONLY) = 3
lstat("/etc/php.ini", {st_mode=S_IFREG|0644, st_size=69105, ...}) = 0
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-27 13:00:06
Na OSX Mavericks, działa:
$ php -i | grep 'Configuration File'
Zwrócony:
Configuration File (php.ini) Path => /etc
Loaded Configuration File: (none)
W katalogu /etc/
było:
php.ini.default
(jak również php-fpm.conf.default
)
Udało mi się skopiować php.ini.default
do php.ini
, Dodać date.timezone = "US/Central"
do góry (tuż pod [php]
) i problem rozwiązany.
(przynajmniej komunikat o błędzie zniknął.)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-28 22:25:13
Jeśli chcesz przekazać go do innej aplikacji, możesz zrobić coś takiego:
php --ini | grep Loaded | cut -d" " -f12
Zwraca tylko ścieżkę. php -c $(php --ini | grep Loaded | cut -d" " -f12)
przejdzie w pliku konfiguracyjnym (przydatne dla fpm
)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-31 02:52:27
Z tego, co pamiętam, kiedy używałem EasyPHP, php.plik ini jest albo w C:\Windows\
albo C:\Windows\System32
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-05-01 15:57:02
W Twoim php.plik ini ustawia katalog rozszerzeń, np.:
extension_dir = "C:/php/ext/"
Zobaczysz w folderze PHP folder ext ze wszystkimi dll i rozszerzeniami.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-19 07:34:21
Do
find / -type f -name "php.ini"
Wyświetli wszystkie pliki o nazwie php.ini
.
Dowiedz się, którego z nich używasz, zwykle apache2/php.ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-27 08:58:39
Nie ma php.ini używane przez wiersz poleceń. Musisz skopiować plik z ...EasyPHP-<<version>>\apache\php.ini
do ...EasyPHP-<<version>>\php\php.ini
, a następnie edytować ten w PHP katalogu
Odniesienie:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:20