我有一个文本文件:
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
doc_root = "/www/"
user_dir =
extension_dir = "/usr/lib/php"
enable_dl = On
;cgi.force_redirect = 1
;cgi.nph = 1
;cgi.redirect_status_env = ;
cgi.fix_pathinfo=1
;fastcgi.impersonate = 1;
;fastcgi.logging = 0
;cgi.rfc2616_headers = 0
我希望在此处匹配/www/
到目前为止我所尝试的内容:
<?php
$phpini = file_get_contents('/etc/php.ini');
preg_match('/doc_root = ".*/', $phpini, $doc_root);
echo $doc_root[0];
?>
但它会打印doc_root = "/www/"
而不是/www/
。我怎么能这样做?
答案 0 :(得分:2)
不是您确切问题的答案,但您如何使用parse_ini_file()来处理文件:
$phpini = parse_ini_file('/etc/php.ini');
echo $phpini['doc_root'];
或者对于当前加载的php.ini
:
echo get_cfg_var('doc_root');
或当前设置(可能已被.htaccess等修改):
echo ini_get('doc_root');
另一种选择是:
echo $_SERVER['DOCUMENT_ROOT'];