0

日志文件

define ( 'COMPANY_WEB', 'www.6666.com' );
//define ( 'COMPANY_WEB', 'www.6666.com' );
define ( 'COMPANY_FAX', 'asdfffff' );

我的字符串替换代码....

$config_old_arr[0] = " define ( 'COMPANY_WEB', 'www.6666.com' )";
$config_new_arr[0] = " define ( 'COMPANY_WEB', 'www.NEW.com' )";

$config_new_file_content = str_replace($config_old_arr, $config_new_arr, $logfilecontent);

运行我的代码后...更改新的 log.php 文件

logNew.php

define ( 'COMPANY_WEB', 'www.NEW.com' );
//define ( 'COMPANY_WEB', 'www.NEW.com' );
define ( 'COMPANY_FAX', 'asdfffff' );

但我只想更改非注释行(第 1 行)中的值,因此结果字符串希望如下

logNew.php

define ( 'COMPANY_WEB', 'www.NEW.com' );
//define ( 'COMPANY_WEB', 'www.6666.com' );
define ( 'COMPANY_FAX', 'asdfffff' );

我喜欢使用 str_replace() 函数,但该方法可能不适合这个问题任何知道这个问题的解决方案的人请帮助我。

4

1 回答 1

-1

使用substr检查字符串的前 2 个字符

//$linetocheck = 要替换的行

if (substr($linetocheck, 0, 2) == "//") {

    //the first 2 chars are //

}
于 2012-11-21T08:55:01.070 回答