开发者

How to get phpinfo() variables from php programmatically?

开发者 https://www.devze.com 2022-12-16 17:16 出处:网络
I am attempting to get a list of dependable(consistent across requests) list of \"hidden\" constants in PHP(as in, the client-side won\'t know about it in most cases without hacking).

I am attempting to get a list of dependable(consistent across requests) list of "hidden" constants in PHP(as in, the client-side won't know about it in most cases without hacking).

Some of the things I am interested in is the following:

  1. ./configure options.
  2. I would also like the very first System value in phpinfo.
  3. The loaded PHP modules(as shown in the Apache section)
  4. The build date of PHP.
  5. Registered PHP streams
  6. Registered stream socket transports
  7. Registered stream filters

How can I get either just a portion of the phpinfo or get these values as a regular string? Note that it doesn't matter if there if markup included, but I don't want to parse 开发者_开发技巧the phpinfo as that just seems really slow and surely there is a better way..


Here you go:

  1. ini_get_all() or get_loaded_extensions() were the closest I could find
  2. php_uname()
  3. apache_get_modules()
  4. phpversion() was the closest I could find
  5. stream_get_wrappers()
  6. stream_get_transports()
  7. stream_get_filters()

See also get_defined_constants() and some more.


As Chacha102 mentioned you can also use output control functions and parse the phpinfo():

ob_start();
phpinfo();
$variable = ob_get_contents();
ob_get_clean();

Due to the use of ob_get_clean() it won't mess up other output buffering levels you may be using.


Most of the stuff available from phpinfo() can be found in constants. Try looking through:

print_r(get_defined_constants());

Or the functions on this page: http://us.php.net/manual/en/ref.info.php. There are tons of functions to get information about specific extensions.

The following functions might be worth looking at:

ini_get() http://us.php.net/manual/en/function.ini-get.php
getenv() http://us.php.net/manual/en/function.getenv.php
get_cfg_var() http://us.php.net/manual/en/function.get-cfg-var.php


Maybe I am late a bit, but basically if you call a shell script problematically to the php.exe

php -i

then you can parse all the information required

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号