【发布时间】:2012-11-17 10:07:59
【问题描述】:
我编写了一个脚本来处理来自 URL 的 html 文件,但是,由于我的廉价主机提供商的 30 年代脚本运行时限制,我不得不更改脚本以将 html 存储为 txt 文件并从本地 WAMP 服务器。
我正在尝试加载每个文件,提取我需要的内容,然后移至下一个文件。
作为源的 URL file_get_html 完美地完成了这项工作(我可以 -> 找到所需的元素)
txt 文件作为源 file_get_html 正在返回一个空白对象。
根据以下帖子中的一些建议,我将file_get_html 更改为file_get_contents,它创建了一个包含文本文件内容的单个大字符串的数组。
首先,确保file_get_contents 可以获取数据。如果可以,file_get_html 将能够将数据加载到simplehtmlDom
如果file_get_contents 返回一个字符串,它确实如此,我将如何“将数据加载到 simplehtml Dom?”
File not getting read using file_get_html
然后我尝试将字符串转换为对象str_get_html,但是这也不起作用。
include('simple_html_dom.php');
$html = file_get_html('file.txt');
var_dump($html);
返回:object(simple_html_dom)[1],但没有其他内容或数组。
include('simple_html_dom.php');
$html = file_get_contents('file.txt');
var_dump($html);
返回:string < ! DOCTYPE html PUBLIC.....
问题:
谁能给我任何建议?将包含 html 标记的文本文件加载到对象中的最佳方法是什么,以便我可以在其内容上使用 find 方法。我想避免将文件加载到字符串数组中并使用正则表达式来处理内容。
如果使用本地 WAMP 服务器,我需要考虑什么?
【问题讨论】:
-
您可以发布您正在尝试阅读的代码和文本文件吗?
-
在我使用 file_get_contents 打开文件后,我设法使用 str_get_html 修复了它。文本文件实际上是网页的 html 源代码转储,例如 ttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" rel="nofollow" target="_blank">w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> w3.org/1999/xhtml"> .......
-
完美,效果很好……
标签: php object wamp file-get-contents simple-html-dom