PHP - 从数据库传递 URL 时文件获取内容不起作用,否则工作正常

问题描述 投票:0回答:2

我正在尝试使用 file_get_contents 获取网页内容

场景一:
当我直接从文本字段传递单个 URL 时,效果非常好。

场景二:
当我在文本区域中获取多个 URL,然后将它们存储在 Mysql 数据库中时。然后我运行一个 for 循环将 URL 传递到与场景 1 中相同的代码片段,它返回此错误

Warning: file_get_contents( URL ) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error in C:\wamp\www\scrape\urltoscrape.php on line 13

我觉得问题出在所使用的数据类型上。所以最初是varchar我把它改成了text。

我也尝试过剥离空间。当我回显 URL 时,它会按原样打印它,没有附加字符或空格。

此外,由于它处于循环中,我认为问题不在于一次传递多个 URL。当尝试场景 1 时,所有 URL 都工作正常。

请帮忙。我已经无计可施了。

php web-scraping url file-get-contents
2个回答
1
投票

file_get_contents( URL )

此错误告诉您,它正在尝试打开 URL

"URL"
。确保您没有忘记变量名称前的
$


0
投票

file_get_contents() 需要一个必须遵循的字符串。现在如果你写 url 作为它的参数,它会尝试获取 URL 的内容

尝试

file_get_contents($url);
© www.soinside.com 2019 - 2024. All rights reserved.