2016-09-29 4 views
1

Я хочу получить измененную дату загружаемого файла, но он возвращает текущее время (что, я думаю, это потому, что filemtime возвращает измененную дату временного файла так долго, как можно получить истинную измененную дату ?PHP filemtime возвращает текущую дату

вот мой код это (Laravel рамки)

$file = $request->file; 
dd(filemtime($file)); 

ответ

0
<?php 
// outputs e.g. somefile.txt was last modified: December 29 2002 22:16:23. 

$filename = 'somefile.txt'; 
if (file_exists($filename)) { 
    echo "$filename was last modified: " . date ("F d Y H:i:s.", filemtime($filename)); 
} 
?> 

Приведенный выше код работает, попробуйте его от конца, дайте мне знать, если какие-либо ошибки.

+0

ну, я тоже хочу получить файл 'filemtime' загруженного файла, а не файл в моем каталоге рядом с ним. Я попытался переместить файл в свой каталог и использовать приведенный выше код, но он все равно возвращает текущее время. – mohammad

1

Ну, вы можете использовать Storage::lastModified($path), чтобы получить измененную дату файла, и не забудьте добавить use Illuminate\Support\Facades\Storage;, надейтесь, что это поможет вам, ребята.

+0

Может быть полезно включить ссылку на документы: https://laravel.com/docs/5.4/filesystem#file-metadata – QuickDanger

0

Если вы хотите использовать protogenous php, вы можете использовать filemtime (storage_path («app/yourPath»). $ File), чтобы получить последнюю измененную дату файла. Потому что storage_path() может получить реальный путь, который восстановит ваш файл. Надеюсь, это поможет вам.