我一直在努力工作几个小时,似乎无法找到一个好的答案。
我正在制作一个脚本来检索外部服务器上几个文件的修改日期。 由于我目前正在使用curl来检索这些数据,因此在我的情况下,它只显示我需要请求的所有文件的数据接受.php文件..
我使用的小脚本..
function modified($url){
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FILETIME, true);
$result = curl_exec($curl);
$timestamp = curl_getinfo($curl, CURLINFO_FILETIME);
if ($timestamp != -1):
echo date("Y-m-d H:i:s", $timestamp);
else:
echo 'No timestamp found';
endif;
}
echo modified('http://myurl.com/');
我做错了什么或者在这种情况下检索.php文件是不可能的。
答案 0 :(得分:1)
你想要做的事情是不可能的。
解决这个问题的方法是编写另一个PHP文件,该文件能够检查服务器上给定php文件的filemtime
。
<强> filemtime.php 强>
<?php
// Get Requested File Name
$filename = isset($_GET['filename']) ? $_GET['filename'] : '';
// Return Result
if (file_exists($filename)) {
echo filemtime($filename);
} else {
echo 0;
}
?>
然后用法就是这样:
<?php
// Load last time index.php was modified on the server
$filemtime = intval(file_get_contents('http://yourdomain.com/filemtime.php?filename=index.php'));
// Parse Result
echo 'index.php was modified on '. date('d/m/Y H:i:s a', $filemtime);
?>