如何将网页内容加载到变量中?
我需要将html存储在字符串
中感谢
答案 0 :(得分:24)
如果已启用allow_url_fopen
,则可以使用file_get_contents
:
$my_var = file_get_contents('http://yoursite.com/your-page.html');
而且,如果您需要更多选项,请查看Stream Functions - stream_context_create
手册页上有一个示例,其中设置了几个HTTP标头。
如果allow_url_fopen
被禁用,则另一种解决方案是使用curl - 这意味着需要更多行代码。
基本的东西应该在最简单的情况下起作用:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://stackoverflow.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$my_var = curl_exec($ch);
curl_close($ch);
但请注意,您可能还需要一些其他选项 - 请参阅curl_setopt
的手册页以获取完整列表。
例如:
CURLOPT_FOLLOWLOCATION
,因此会重定向。答案 1 :(得分:2)
以下代码将网站w3schools.com的内容存储到变量中。
$ my_var = file_get_contents('http://www.w3schools.com');
echo $ my_var;