ДоХтор, Если я поставил
// 8 секунд назад
echo MyTime(time() - 8) .'<br />';
// 23 секунды назад
echo MyTime(time() - 23) .'<br />';
// Сегодня в 21:40
echo MyTime(time() - 3600) .'<br />';
// Вчера в 22:36
echo MyTime(time() - (3600 * 24)) .'<br />';
// 23 Окт 2016 в 10:04
$tm = mktime(8, 04, 00, 10, 23, 2016);
echo MyTime($tm) .'<br />';
function MyTime($times = null) {
$time = time();
$label = $time - $times;
$shift = (core::$system_set['timeshift']
+ core::$user_set['timeshift']) * 3600;
$w = 'секунд';
$arrSec = [$w .'у', $w .'ы', $w];
$w = 'минут';
$arrMin = [$w .'у', $w .'ы', $w];
$back = ' назад';
if ($label == 0) {
$timesp = 'Только что';
} elseif ($label < 60) {
$timesp = pl($label, $arrSec) . $back;
} elseif ($label < 3600) {
$timesp = pl(intval($label / 60), $arrMin) . $back;
} else {
$today = date('j M Y', $time + $shift);
$yesterday = date('j M Y', strtotime('-1 day'));
$timesp = date('j M Y в H:i', $times + $shift);
$timesp = str_replace($today, 'Сегодня', $timesp);
$timesp = str_replace($yesterday, 'Вчера', $timesp);
$timesp = strtr(
$timesp,
[
'Jan' => 'Янв',
'Feb' => 'Фев',
'Mar' => 'Марта',
'May' => 'Мая',
'Apr' => 'Апр',
'Jun' => 'Июня',
'Jul' => 'Июля',
'Aug' => 'Авг',
'Sep' => 'Сент',
'Oct' => 'Окт',
'Nov' => 'Ноября',
'Dec' => 'Дек'
]
);
}
return $timesp;
}
этот код ошибка
Parse error: syntax error, unexpected T_ECHO, expecting T_FUNCTION in Z:\home\james\sub\incfiles\classes\functions.php on line 175
Если поставил это
public static function display_date($times)
{
$pl = function ($int, $arr) {
if ($int > 10 && $int < 15) {
$out = ' '. $arr[2];
} elseif (($int % 10) == 1) {
$out = ' '. $arr[0];
} elseif (($int % 10) > 1 && ($int % 10) < 5) {
$out = ' '. $arr[1];
} else {
$out = ' '. $arr[2];
}
return $int . $out;
};
$time = time();
$label = $time - $times;
$shift = (self::$system_set['timeshift']
+ self::$user_set['timeshift']) * 3600;
$w = 'секунд';
$arrSec = [$w .'у', $w .'ы', $w];
$w = 'минут';
$arrMin = [$w .'у', $w .'ы', $w];
$back = ' назад';
if ($label == 0) {
$timesp = 'Только что';
} elseif ($label < 60) {
$timesp = $pl($label, $arrSec) . $back;
} elseif ($label < 3600) {
$timesp = $pl(intval($label / 60), $arrMin) . $back;
} else {
$today = date('j M Y', $time + $shift);
$yesterday = date('j M Y', strtotime('-1 day'));
$timesp = date('j M Y в H:i', $times + $shift);
$timesp = str_replace($today, 'Сегодня', $timesp);
$timesp = str_replace($yesterday, 'Вчера', $timesp);
$timesp = strtr(
$timesp,
[
'Jan' => 'Янв',
'Feb' => 'Фев',
'Mar' => 'Марта',
'May' => 'Мая',
'Apr' => 'Апр',
'Jun' => 'Июня',
'Jul' => 'Июля',
'Aug' => 'Авг',
'Sep' => 'Сент',
'Oct' => 'Окт',
'Nov' => 'Ноября',
'Dec' => 'Дек'
]
);
}
return $timesp;
}
ошибка такая
Parse error: syntax error, unexpected '[' in Z:\home\james\sub\incfiles\classes\functions.php on line 197