简体   繁体   English

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

[英]How to match the second occurrence in php?

I have a text file: 我有一个文本文件:

; 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

I want to match /www/ here's what I've tried so far: 我想匹配/www/这是到目前为止我尝试过的操作:

<?php
$phpini = file_get_contents('/etc/php.ini');
preg_match('/doc_root = ".*/', $phpini, $doc_root);
echo $doc_root[0];
?>

But it prints doc_root = "/www/" instead of /www/ . 但是它输出doc_root = "/www/"而不是/www/ How can I do this ? 我怎样才能做到这一点 ?

Not an answer to your exact question, but how about you use parse_ini_file() for files: 不是您确切问题的答案,而是如何对文件使用parse_ini_file()

$phpini = parse_ini_file('/etc/php.ini');
echo $phpini['doc_root'];

Or for the currently loaded php.ini : 或对于当前加载的php.ini

echo get_cfg_var('doc_root');

Or the current setting (could have been modified by .htaccess etc.): 或当前设置(可能已被.htaccess等修改):

echo ini_get('doc_root');

Another option would be: 另一种选择是:

echo $_SERVER['DOCUMENT_ROOT'];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM