phpinfo
Выводит большое количество информации о текущем состоянии PHP. Сюда входит информация о настройках компиляции PHP, о расширениях, о версии, информация о сервере и среде выполнения (если PHP компилировался как модуль), окружении PHP, версии ОС, о путях, об основных и локальных значениях настроек конфигурации, о HTTP заголовках и лицензии PHP.
Так как каждая система имеет свои особенности, phpinfo() используется в основном для проверки настроек конфигурации и для просмотра доступных предопределенных констант в данной системе.
phpinfo() также используется в целях отладки, так как содержит все EGPCS (Environment, GET, POST, Cookie, Server) данные.
Список параметров
Вывод функции можно настраивать, передавая битовую маску из одной или более приведенных ниже констант (constants). Эта маска передается в качестве необязательного аргумента what . Отдельные константы или битовые значения можно комбинировать с помощью оператора или.
Имя (константа) | Значение | Описание |
---|---|---|
INFO_GENERAL | 1 | Строка конфигурации, расположение php.ini , дата сборки, Web-сервер, Система и др. |
INFO_CREDITS | 2 | Разработчики PHP. См. также phpcredits() . |
INFO_CONFIGURATION | 4 | Текущие значение основных и локальных PHP директив. См. также ini_get() . |
INFO_MODULES | 8 | Загруженные модули и их настройки. См. также get_loaded_extensions() . |
INFO_ENVIRONMENT | 16 | Информация о переменных окружения, которая также доступна в $_ENV . |
INFO_VARIABLES | 32 | Выводит все предопределенные переменные из EGPCS (Environment, GET, POST, Cookie, Server). |
INFO_LICENSE | 64 | Информация о лицензии PHP. См. также » license FAQ. |
INFO_ALL | -1 | Выводит все приведенное выше. |
Возвращаемые значения
Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.
Список изменений
Версия | Описание |
---|---|
5.5.0 | GUID логотипов были заменены на URI данных, и отключение expose_php теперь не влияет на результат phpinfo(). Список авторов теперь также встроен в вывод. |
5.2.2 | Добавлен вывод информации о загруженном конфигурационном файле. Ранее выводился только путь к конфигурационному файлу (php.ini). |
Примеры
Пример #1 Пример использования phpinfo()
// Показывать всю информацию, по умолчанию INFO_ALL
phpinfo ();
// Показывать информацию только о загруженных модулях.
// phpinfo(8) выдает тот же результат.
phpinfo ( INFO_MODULES );
Примечания
Замечание:
В версиях PHP до 5.5, часть информации не выводится, если настройка expose_php установлена в off. Это PHP и Zend логотипы и информация о разработчиках.
Замечание:
В режиме CLI phpinfo() выводит обычный текст вместо HTML.
Смотрите также
- phpversion() — Выдает текущую версию PHP
- phpcredits() — Выводит список разработчиков PHP
- php_logo_guid() — Получение guid логотипа
- ini_get() — Получает значение настройки конфигурации
- ini_set() — Установка значения настройки конфигурации
- get_loaded_extensions() — Возвращает массив имен всех скомпилированных и загруженных модулей
- Предопределенные переменные
phpinfo
Выводит большое количество информации о текущем состоянии PHP. Сюда входит информация о настройках компиляции PHP, о расширениях, о версии, информация о сервере и среде выполнения (если PHP компилировался как модуль), окружении PHP, версии ОС, о путях, об основных и локальных значениях настроек конфигурации, о HTTP заголовках и лицензии PHP.
Так как каждая система имеет свои особенности, phpinfo() используется в основном для проверки настроек конфигурации и для просмотра доступных предопределенных констант в данной системе.
phpinfo() также используется в целях отладки, так как содержит все EGPCS (Environment, GET, POST, Cookie, Server) данные.
Список параметров
Вывод функции можно настраивать, передавая битовую маску из одной или более приведенных ниже констант (constants). Эта маска передается в качестве необязательного аргумента what . Отдельные константы или битовые значения можно комбинировать с помощью оператора или.
Имя (константа) | Значение | Описание |
---|---|---|
INFO_GENERAL | 1 | Строка конфигурации, расположение php.ini , дата сборки, Web-сервер, Система и др. |
INFO_CREDITS | 2 | Разработчики PHP. См. также phpcredits() . |
INFO_CONFIGURATION | 4 | Текущие значение основных и локальных PHP директив. См. также ini_get() . |
INFO_MODULES | 8 | Загруженные модули и их настройки. См. также get_loaded_extensions() . |
INFO_ENVIRONMENT | 16 | Информация о переменных окружения, которая также доступна в $_ENV . |
INFO_VARIABLES | 32 | Выводит все предопределенные переменные из EGPCS (Environment, GET, POST, Cookie, Server). |
INFO_LICENSE | 64 | Информация о лицензии PHP. См. также » license FAQ. |
INFO_ALL | -1 | Выводит все приведенное выше. |
Возвращаемые значения
Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.
Список изменений
Версия | Описание |
---|---|
5.5.0 | GUID логотипов были заменены на URI данных, и отключение expose_php теперь не влияет на результат phpinfo(). Список авторов теперь также встроен в вывод. |
5.2.2 | Добавлен вывод информации о загруженном конфигурационном файле. Ранее выводился только путь к конфигурационному файлу (php.ini). |
Примеры
Пример #1 Пример использования phpinfo()
// Показывать всю информацию, по умолчанию INFO_ALL
phpinfo ();
// Показывать информацию только о загруженных модулях.
// phpinfo(8) выдает тот же результат.
phpinfo ( INFO_MODULES );
Примечания
Замечание:
В версиях PHP до 5.5, часть информации не выводится, если настройка expose_php установлена в off. Это PHP и Zend логотипы и информация о разработчиках.
Замечание:
В режиме CLI phpinfo() выводит обычный текст вместо HTML.
Смотрите также
- phpversion() — Выдает текущую версию PHP
- phpcredits() — Выводит список разработчиков PHP
- php_logo_guid() — Получение guid логотипа
- ini_get() — Получает значение настройки конфигурации
- ini_set() — Установка значения настройки конфигурации
- get_loaded_extensions() — Возвращает массив имен всех скомпилированных и загруженных модулей
- Предопределенные переменные
phpinfo
Выводит большое количество информации о текущем состоянии PHP. Сюда входит информация о настройках компиляции PHP, о модулях, о версии, информация о сервере и среде выполнения (если PHP компилировался как модуль), окружении PHP, версии ОС, о путях, об основных и локальных значениях настроек конфигурации, о HTTP-заголовках и лицензии PHP.
Так как каждая система имеет свои особенности, phpinfo() используется в основном для проверки настроек конфигурации и для просмотра доступных предопределённых констант в данной системе.
phpinfo() также используется в целях отладки, так как содержит все данные EGPCS (Environment, GET, POST, Cookie, Server).
Список параметров
Вывод функции можно настраивать, передавая битовую маску из одной или более приведённых ниже констант (constants). Эта маска передаётся в качестве необязательного аргумента flags . Отдельные константы или битовые значения можно комбинировать с помощью побитового оператора ИЛИ.
Имя (константа) | Значение | Описание |
---|---|---|
INFO_GENERAL | 1 | Строка конфигурации, расположение php.ini , дата сборки, сервер, система и др. |
INFO_CREDITS | 2 | Разработчики PHP. Смотрите также phpcredits() . |
INFO_CONFIGURATION | 4 | Текущие значение основных и локальных PHP директив. Смотрите также ini_get() . |
INFO_MODULES | 8 | Загруженные модули и их настройки. Смотрите также get_loaded_extensions() . |
INFO_ENVIRONMENT | 16 | Информация о переменных окружения, которая также доступна в $_ENV . |
INFO_VARIABLES | 32 | Выводит все предопределённые переменные из EGPCS (Environment, GET, POST, Cookie, Server). |
INFO_LICENSE | 64 | Информация о лицензии PHP. Смотрите также » license FAQ. |
INFO_ALL | -1 | Выводит все приведённое выше. |
Возвращаемые значения
Функция всегда возвращает true .
Примеры
Пример #1 Пример использования phpinfo()
// Показывать всю информацию, по умолчанию INFO_ALL
phpinfo ();
// Показывать информацию только о загруженных модулях.
// phpinfo(8) выдаёт тот же результат.
phpinfo ( INFO_MODULES );
Примечания
Замечание:
В версиях PHP до 5.5, часть информации не выводится, если настройка expose_php установлена в off . Это PHP и Zend логотипы и информация о разработчиках.
Замечание:
В режиме CLI phpinfo() выводит обычный текст вместо HTML.
Смотрите также
- phpversion() — Получает текущую версию PHP
- phpcredits() — Выводит список разработчиков PHP
- ini_get() — Получает значение настройки конфигурации
- ini_set() — Устанавливает значение настройки конфигурации
- get_loaded_extensions() — Возвращает массив имён всех скомпилированных и загруженных модулей
- Предопределённые переменные
User Contributed Notes 21 notes
A simple method to style your own phpinfo() output.
ob_start () ;
phpinfo () ;
$pinfo = ob_get_contents () ;
ob_end_clean () ;
// the name attribute «module_Zend Optimizer» of an anker-tag is not xhtml valide, so replace it with «module_Zend_Optimizer»
echo ( str_replace ( «module_Zend Optimizer» , «module_Zend_Optimizer» , preg_replace ( ‘%^.*
This is necessary to obtain a W3C validation (XHTML1.0 Transitionnal).
phpinfo’s output is declared with that DTD :
— «System ID» has the wrong url to validate : «DTD/xhtml1-transitional.dtd» rather than «http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd»
— Some module names contains space and the function’s output use the name in anchors as ID and NAME. these attributes can’t be validated like that (unique name only).
ob_start (); // Capturing
phpinfo (); // phpinfo ()
$info = trim ( ob_get_clean ()); // output
// Replace white space in ID and NAME attributes. if exists
$info = preg_replace ( ‘/(id|name)(=[«\’][^ «\’]+) ([^ «\’]*[«\’])/i’ , ‘$1$2_$3’ , $info );
$info_doc = new DOMDocument ( ‘1.0’ , ‘utf-8’ );
/* Parse phpinfo’s output
* operator @ used to avoid messages about undefined entities
* or use loadHTML instead
*/
@ $info_doc -> loadXML ( $info );
$doc -> documentElement -> appendChild ( // Adding HEAD element to HTML
$doc -> importNode (
$info_doc -> getElementsByTagName ( ‘head’ )-> item ( 0 ),
true // With all the subtree
)
);
$doc -> documentElement -> appendChild ( // Adding BODY element to HTML
$doc -> importNode (
$info_doc -> getElementsByTagName ( ‘body’ )-> item ( 0 ),
true // With all the subtree
)
);
// Now you get a clean output and you are able to validate.
/*
echo ($doc->saveXML ());
// OR
echo ($doc->saveHTML ());
*/
// By that way it’s easy to add some style declaration :
$style = $doc -> getElementsByTagName ( ‘style’ )-> item ( 0 );
$style -> appendChild (
$doc -> createTextNode (
‘/* SOME NEW CSS RULES TO ADD TO THE FUNCTION OUTPUT */’
)
);
// to add some more informations to display :
$body = $doc -> getElementsByTagName ( ‘body’ )-> item ( 0 );
$element = $doc -> createElement ( ‘p’ );
$element -> appendChild (
$doc -> createTextNode (
‘SOME NEW CONTENT TO DISPLAY’
)
);
$body -> appendChild ( $element );
// to add a new header :
$head = $doc -> getElementsByTagName ( ‘head’ )-> item ( 0 );
$meta = $doc -> createElement ( ‘meta’ );
$meta -> setAttribute ( ‘name’ , ‘author’ );
$meta -> setAttribute ( ‘content’ , ‘arimbourg at ariworld dot eu’ );
$head -> appendChild ( $meta );
// As you wish, take the rest of the output and add it for debugging
$out = ob_get_clean ();
$pre = $doc -> createElement ( ‘div’ ); // or pre
$pre -> setAttribute ( ‘style’ , ‘white-space: pre;’ ); // for a div element, useless with pre
$pre -> appendChild ( $doc -> createTextNode ( $out ));
$body -> appendChild ( $pre );
$doc -> formatOutput = true ; // For a nice indentation
$doc -> saveXML ();
?>
All that could be done with only RegExp but I prefer the use of DOM for manipulating documents