PHP数组展示 phpinfo, ini, extensions等信息
程序员文章站
2022-05-07 22:36:04
...
PHP数组显示 phpinfo, ini, extensions等信息
1. phpinfo to array
function phpinfo_array($return=false) { ob_start(); phpinfo(-1); $pi = preg_replace( array('#^.*(.*).*$#ms', '#PHP License
.*$#ms', '#Configuration
#', "#\r?\n#", "#(h1|h2|h3|tr)>#", '# +(?:.*?)" src="(?:.*?)=(.*?)" alt="PHP Logo" />' .'PHP Version (.*?)
(?:\n+?)#', '#PHP Credits
#', '#(?:.*?)" src="(?:.*?)=(.*?)"(?:.*?)Zend Engine (.*?),(?:.*?) #', "# +#", '##', '# #'), array('$1', '', '', '', '$1>' . "\n", 'PHP Configuration'."\n".''. "\n".' PHP Version $2 ', ' PHP Egg $1 ', ' PHP Credits Egg $1 ' . "\n" . ' Zend Engine $2 ', ' ', '%S%', '%E%'), ob_get_clean()); $sections = explode(' Zend Egg $1 ', strip_tags($pi, '
')); unset($sections[0]); $pi = array(); foreach($sections as $section) { $n = substr($section, 0, strpos($section, '')); preg_match_all('#%S%(?: (.*?) )?(?:(.*?) )?(?:(.*?) )?%E%#',$section, $askapache, PREG_SET_ORDER); foreach($askapache as $m) $pi[$n][$m[1]]=(!isset($m[3])||$m[2]==$m[3])?$m[2]:array_slice($m,2); } return ($return === false) ? print_r($pi) : $pi; } phpinfo_array();
?
来源:http://www.php.net/manual/en/function.phpinfo.php#87463
?
2. get_loaded_extensions? and PHP_VERSION
print_r(get_loaded_extensions()); //print_r(apache_get_modules()); // 一般服务商都会屏蔽掉 print_r(PHP_VERSION);
?
3.? ini to array
$ini_path = php_ini_loaded_file(); print_r($ini_path); $ini = parse_ini_file($ini_path); print_r($ini);
?
or
function parse_ini ( $filepath ) { $ini = file( $filepath ); if ( count( $ini ) == 0 ) { return array(); } $sections = array(); $values = array(); $globals = array(); $i = 0; foreach( $ini as $line ){ $line = trim( $line ); // Comments if ( $line == '' || $line{0} == ';' ) { continue; } // Sections if ( $line{0} == '[' ) { $sections[] = substr( $line, 1, -1 ); $i++; continue; } // Key-value pair list( $key, $value ) = explode( '=', $line, 2 ); $key = trim( $key ); $value = trim( $value ); if ( $i == 0 ) { // Array values if ( substr( $line, -1, 2 ) == '[]' ) { $globals[ $key ][] = $value; } else { $globals[ $key ] = $value; } } else { // Array values if ( substr( $line, -1, 2 ) == '[]' ) { $values[ $i - 1 ][ $key ][] = $value; } else { $values[ $i - 1 ][ $key ] = $value; } } } for( $j=0; $j?
来源:http://php.net/parse_ini_file
?
?
?
?
?
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
上一篇: C++ 多线程框架(3):消息队列
下一篇: PHP数字转汉字的函数算法
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论