如何匹配php中的第二次出现?

时间:2017-02-06 16:18:51

标签: php

我有一个文本文件:

; 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/。我怎么能这样做?

1 个答案:

答案 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'];