我不熟悉您使用的称为“site_url”的方法。从快速的谷歌搜索来看,它看起来像是 Word Press 中的一种方法。忽略 site_url 方法,您可能希望使用特定的 url 进行测试,例如http://ted.com。我指定了 is_file 而不是 file_exists,因为即使您指定的路径是目录,file_exists 也会返回 true,而 is_file 只有在路径是实际文件时才会返回 true。试试这个代码,将 $site 变量设置为站点 url 或文件路径。
我还切换了一些代码,先检查文件是否存在,然后再尝试读取 $site.xml 的内容。这样,如果文件已经存在,您就不需要读取 $site 的内容。
$filename = "Service_delivery_report_" . date("Y-m-d",
time()). ".html";
$filepath = realpath("./") . "/views/sd_reports/" . $filename;
if (!is_file($filepath))
{
$site = "http://somesite.com/somepage";
if ($content = file_get_contents($site))
{
file_put_contents($filepath,
$content);
}
else
{
echo "Could not grab the contents of some site";
}
}