Формат filemtime () в человеческой дате

как я могу отобразить, например Сегодня или вчера, если файл был изменен сегодня или вчера вместо даты с filemtime?

пропущено:

$date = date('d-m-Y', $timestamp);
$today = date('d-m-Y');
$yesterday = date('d-m-Y', strtotime('yesterday'));
$otherdate= get_the_date();

$file= 'index.php';
$time= filemtime ( $file);

Спасибо!

-1

Решение

Попробуй это

define( 'DAY_IN_SECONDS', 24*60*60 );

$file = 'index.php';
$time = filemtime( $file );
$today_start_at = strtotime(date('Y-m-d'));
$yesterday_start_at = $today_start_at - DAY_IN_SECONDS;

if( ($time - $today_start_at) >= 0 ){
// Today
echo 'Today';
}elseif ( ($time - $yesterday_start_at) >= 0 ) {
// Yesterday
echo 'Yesterday';
}else{
// N days ago
$days_ago = floor( (time() - $time)/DAY_IN_SECONDS );
echo "{$days_ago} days ago";
}
2

Другие решения

Вы почти там. Просто нужно добавить форматер в filemtime и сравните с сегодняшней и вчерашней датами:

$date = date('d-m-Y', $timestamp);
$today = date('d-m-Y');
$yesterday = date('d-m-Y', strtotime('yesterday'));
$otherdate= get_the_date();

$file= 'index.php';
$time= date('d-m-Y', filemtime($file));

if( $time == $today ) {
echo 'Modified Today';
} else if( $time == $yesterday ) {
echo 'Modified Yesterday';
}
1

По вопросам рекламы [email protected]