【发布时间】:2018-02-21 08:29:22
【问题描述】:
我的网站遇到了这个小问题。我想替换我的一个 html 文件中的一个字符串。我做了一个 php 文件,找到特定的字符串并替换它,但它变得无用成为更改后的字符串不一样......
在我的 HTML 文件中,我可以为 PHP 文件生成的任何随机字符串更改 7NT0j5dB2QMyWv96nXIDgaR4PJ
<tr>
<td>Secret Key</td>
<td><strong style="color:#b94a48;">7NT0j5dB2QMyWv96nXIDgaR4PJ</strong></td>
</tr>
但在我的 PHP 文件中,要替换的字符串仍然是 7NT0j5dB2QMyWv96nXIDgaR4PJ,而不是新的...
这是我的php代码:
$contents = file_get_contents ("step-second-test.php");
$contents = str_replace(array("7NT0j5dB2QMyWv96nXIDgaR4PJ"), generateRandomString($length = 26), $contents);
file_put_contents("step-second-test.php", $contents);
【问题讨论】:
-
为什么不直接在 step-second-test.php 中回显函数的结果?
-
为我工作3v4l.org/R1K1d 也许问题出在
generateRandomString,你没有包括 -
^ 这意味着您要替换的内容不存在于文件中。 或者这个html部分是动态创建的
-
@u_mulder OP的观点是
file_put_contents("step-second-test.php", $contents);修改了文件,也就是说第一次运行后基本没用了。 -
generateRandomString($length = 26) 可能应该是 generateRandomString(26)。你也可以发布那个功能吗?
标签: php html string replace find