我正在尝试使用PHP的file_get_contents()
功能从美国国家档案馆的网站检索数据,就像我过去制作类似的脚本一样。但是出于某种原因,在这种情况下,该函数不会检索任何文件的内容。
我必须承认我对这种工作没有多少经验。有人可能会指出为什么文件可能无法正确返回,即使我手动在地址栏中输入URL时文件显示正常。这是源代码(或不输出任何内容的最小版本):
$asn = $_REQUEST['asn'];
$format = $_REQUEST['output'];
$data = array();
if(!empty($asn))
{
$url_to_get = 'http://aad.archives.gov/aad/print-record-detail.jsp?dt=893&mtch=1&tf=F&q=31371273&bc=sl,fd&rpp=10&pg=1&rid=2546302';
$content = file_get_contents($url_to_get);
echo $content;
}
我们尝试访问的网址是> http://aad.archives.gov/aad/print-record-detail.jsp?dt=893&mtch=1&tf=F&q=31371273&bc=sl,fd&rpp=10&pg=1&rid=2546302
在localhost
上运行脚本是否可能导致此处出现问题?
答案 0 :(得分:8)
如果失败肯定会有警告。该特定URL希望PHP配置SSL支持,因为在库存上运行它给我:
无法打开流:无法找到套接字传输“ssl” - 确实 你忘了在配置PHP时启用它吗?
这告诉我必须为PHP启用openssl
扩展名。