【发布时间】:2016-01-26 00:43:32
【问题描述】:
我正在尝试查找将在我的屏幕上加载 URL 的源页面的 PHP 代码 - 实际上我正在尝试做更多的事情,但这是我想要以干净可靠的方式实现的第一步。大多数帖子都说这已经被问过并回答了好几次,但对我来说似乎没有什么能可靠地工作,而且大多数帖子都是旧的。最重要的是,我对 PHP 或任何 Web 编程都非常陌生。 无论如何,我确实找到了一些使用 cURL、DOM 或直接函数的代码,这些代码有效但对 PHP 版本非常敏感。 PHP 5.2、5.3、5.5 和 5.6 是我的托管服务提供的版本。 在某些版本中工作的那些,加载(显示)URL页面本身或以没有图像的“项目符号”方式 - 但是当我们在任何网页上执行“查看页面源代码”时,没有任何东西看起来像html文档.所以我的问题是这根本不可能,还是我在这里遗漏了什么?与页面相呼应但不是源代码的 DOM 代码之一,也仅在 5.2 和 5.5 中是:
<?php
$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTMLFile('http://www.cisco.com/');
echo $dom->saveHTML();
?>
我的另一个重要需求是我的 PHP 代码至少现在可以在 5.3 中工作,但如果可能的话,我希望 em 在 5.2 到 5.5 中工作。请大家指点一下?
【问题讨论】:
-
“这将在我的屏幕上加载 URL 的源页面”到底是什么意思?从另一个页面检索源代码并将其 HTML 检索到浏览器?渲染它的图像? ...?
-
你正在转储 html - 你的浏览器将呈现它,除非你告诉它 NOT 到例如
echo htmlspecialchars($dom->saveHTML());或header('Content-type: text/plain); $dom->saveHTML(); -
@fjc,例如:在 www.cisco.com 的网页上,如果你做一个“查看源页面”,你会在新的浏览器中得到它的源 html 文档。
-
感谢@Marc B,知道为什么您和所有其他解决方案在 PHP 5.2 和 5.5 中提供输出,但在 5.3 和 5.6 中提供空白输出?我需要他们至少在 5.3 中工作。
-
本可以使用某人的一些回应,为什么所有代码似乎在 PHP 5.2 和 5.5 中都可以工作,但在 5.3 和 5.6 中却不行...
标签: javascript php jquery html curl