【发布时间】:2011-05-08 15:34:57
【问题描述】:
当我执行以下代码时;我每次都遇到段错误!这是一个已知的错误?我怎样才能使这段代码工作?
<?php
$doc = file_get_contents("http://prairieprogressive.com/");
$replace = array(
"/<script([\s\S])*?<\/ ?script>/",
"/<style([\s\S])*?<\/ ?style>/",
"/<!--([\s\S])*?-->/",
"/\r\n/"
);
$doc = preg_replace($replace,"",$doc);
echo $doc;
?>
错误(显然)看起来像:
[root@localhost 2.0]# php test.php
Segmentation fault (core dumped)
【问题讨论】:
-
你有没有想过使用proper HTML parser?
-
作为注释,我认为您在脚本和样式标签之后缺少
>。 -
向我们展示实际的错误。如果您遇到段错误,则可能是您的 PHP 安装存在问题。或者一个错误。无论哪种方式,请遵循 @Gumbo 的建议并使用 HTML 解析器。
-
@Gumbo 这是在页面被 DOMDocument 解析之前清理通常麻烦的标签的预处理的一部分
-
@Cfreak : 我认为这是一个错误,我正在我的笔记本电脑上重现它
标签: php segmentation-fault preg-replace