我正在使用file_put_content()编写HTML文件,但希望以后能够通过提取当前文件内容并将已知结尾切断为html来添加其他内容。
这些内容如下:
$close = '</body></html>';
$htmlFile = file_get_contents('someUrl');
$tmp = $htmlFile - $close;
file_put_contents('someUrl', $tmp.'New Content'.$close);
但由于我不能只减去字符串,如何从文件内容的末尾删除已知字符串?
答案 0 :(得分:0)
substr
可用于从字符串末尾切断已知长度。但也许您应该确定您的字符串是否真的以您的后缀结尾。要实现此目的,您还可以使用substr
:
if (strtolower(substr($string, -strlen($suffix))) == strtolower($suffix)) {
$string = substr($string, 0, -strlen($suffix));
}
如果案件没有发挥任何作用,您可以省略strtolower
。
另一方面,您可以使用str_replace
注入您的内容:
$string = str_replace('</body>', $newContent . '</body>', $string);
也许,Manipulate HTML from php也可以提供帮助。