我正在处理PHP代码,如下所示:
$src_dir = ('\INVEST-ST-001testpodcastincoming_folder');
$mp4_files = preg_grep('~.(mp4)$~', scandir($src_dir));
$file = $mp4_files[$key];
print_r($file); // Line A
echo date("F d Y", filemtime("$file")); echo "t"; echo date("H:i:s", filemtime("$file")); // Line D
行A返回以下值:
36031P.mp4 hello.mp4
上面的两个文件放置在incoming_folder中。上述两个文件的最后修改日期为:
1/05/2019 2:56 PM
30/04/2019 10:21 AM
我已经使用D行返回网页上的最后修改日期,但是我得到以下垃圾日期,而不是上面的实际日期:
December 31 1969 19:00:00
December 31 1969 19:00:00
问题语句:
我想知道我应该在D行上进行哪些更改,以便它返回上述2个文件的最后修改日期。
显然我的评论还不够。我会更好地解释。因此,您需要文件名来包括路径,否则filemtime
由于文件不存在而失败。
哪个值传递到该功能是有意义的?
\INVEST-ST-001testpodcastincoming_folderfile1.mp3
或file1.mp3
?"当前工作目录"可能是PHP脚本正在执行的位置,这与您扫描文件名的路径不同。
基本上,您可以通过重新应用文件名的路径来解决此问题。
$src_dir = ('\INVEST-ST-001testpodcastincoming_folder');
$mp4_files = preg_grep('~.(mp4)$~', scandir($src_dir));
$fullFileName = $src_dir . DIRECTORY_SEPARATOR . $mp4_files[$key];
echo date("F d Y", filemtime($fullFileName));
echo "t"; echo date("H:i:s", filemtime($fullFileName)); // Line D