Loading...
PHP/MySQL | Функция розшифровки времени
В каком движку можно надыбать нормальную функцию, которая с числа 1698885844 сделает текст, типа "17 минут назад", или "Вчера в 14:23", "12 окт 2023 г в 14:23" или что-то в таком духе. только реально нормальная, а не которая кроме даты и времени больше ничего не выведет. Зарание спасибо

function ptime($time = NULL)
{
ini_set('date.timezone', "Europe/Moscow");
if ($time == NULL) $time = time();
$settime = 1;
$full_time = date('d.m.Y / H:i', $time);
$date = date('d.m.Y', $time);
$timep = date('H:i', $time);
if ($date == date('d.m.Y')) $full_time = date('Сегодня H:i', $time);
if ($date == date('d.m.Y', time() - 60 * 60 * 24)) $full_time = date('Вчера, H:i', $time);
if ($settime == 1 && $date == date('d.m.Y')) $full_time = date('Сегодня, H:i', $time);
return $full_time;
}

Будет что-то тип:
12.01.2012 / 20:11
Сегодня в 11:16
Вчера, 14:33
Я так делал

class PTimeConverter {
private $time;
private $settime;

public function __construct($time = null, $settime = 1) {
ini_set('date.timezone', "Europe/Moscow");
$this->time = ($time === null) ? time() : $time;
$this->settime = $settime;
}

public function convertTime() {
$full_time = date('d.m.Y / H:i', $this->time);
$date = date('d.m.Y', $this->time);
$timep = date('H:i', $this->time);

if ($date == date('d.m.Y')) {
$full_time = date('Сегодня H:i', $this->time);
}

if ($date == date('d.m.Y', time() - 60 * 60 * 24)) {
$full_time = date('Вчера, H:i', $this->time);
}

if ($this->settime == 1 && $date == date('d.m.Y')) {
$full_time = date('Сегодня, H:i', $this->time);
}

return $full_time;
}
}

Пример использования:
$ptimeConverter = new PTimeConverter();
echo $ptimeConverter->convertTime();
[Brony] pimnik98 (19 янв 2024, в 11:11)

function ptime($time = NULL)
{
ini_set('date.timezone', "Europe/Moscow");
if ($time == NULL) $time = time();
$settime = 1;
$full_time = date('d.m.Y / H:i', $time);
$date = date('d.m.Y', $time);
$timep = date('H:i', $time);
if ($date == date('d.m.Y')) $full_time = date('Сегодня H:i', $time);
if ($date == date('d.m.Y', time() - 60 * 60 * 24)) $full_time = date('Вчера, H:i', $time);
if ($settime == 1 && $date == date('d.m.Y')) $full_time = date('Сегодня, H:i', $time);
return $full_time;
}

Будет что-то тип:
12.01.2012 / 20:11
Сегодня в 11:16
Вчера, 14:33
Спасибо, немного дописал под себя:
function ptime($time = NULL)
{
ini_set('date.timezone', "Europe/Moscow");
if ($time == NULL) $time = time();
$settime = 1;
$current_time = time();
$time_difference = $current_time - $time;

if ($time_difference < 60) {
return 'Только что';
}

$full_time = date('d.m.Y в H:i', $time);
$date = date('d.m.Y', $time);
$timep = date('H:i', $time);

if ($date == date('d.m.Y')) $full_time = date('Сегодняв в H:i', $time);
if ($date == date('d.m.Y', $current_time - 60 * 60 * 24)) $full_time = date('Вчера в H:i', $time);
if ($settime == 1 && $date == date('d.m.Y')) $full_time = date('Сегодня в H:i', $time);

return $full_time;
}
MARAZM (19 янв 2024, в 23:13)
Спасибо, немного дописал под себя:
function ptime($time = NULL)
{
ini_set('date.timezone', "Europe/Moscow");
if ($time == NULL) $time = time();
$settime = 1;
$current_time = time();
$time_difference = $current_time - $time;

if ($time_difference < 60) {
return 'Только что';
}

$full_time = date('d.m.Y в H:i', $time);
$date = date('d.m.Y', $time);
$timep = date('H:i', $time);

if ($date == date('d.m.Y')) $full_time = date('Сегодняв в H:i', $time);
if ($date == date('d.m.Y', $current_time - 60 * 60 * 24)) $full_time = date('Вчера в H:i', $time);
if ($settime == 1 && $date == date('d.m.Y')) $full_time = date('Сегодня в H:i', $time);

return $full_time;
}
Воистину пользователь бумас, не забудь после такого переписания могучего пару строк копирайта своего влепить, где вас таких только поставляют на этот форум.
d1nka (19 янв 2024, в 23:22)
Воистину пользователь бумас, не забудь после такого переписания могучего пару строк копирайта своего влепить, где вас таких только поставляют на этот форум.
Девушка, вы пьяны? Какой копирайт, о чем идет речь? Мне этого кода достаточно, я добавил маленькую поправку, возможно, этот код будет кому-то полезен...
MARAZM (19 янв 2024, в 23:26)
Девушка, вы пьяны? Какой копирайт, о чем идет речь? Мне этого кода достаточно, я добавил маленькую поправку, возможно, этот код будет кому-то полезен...
Девушка или Дивушко? *biggrin*
MARAZM (19 янв 2024, в 23:26)
Девушка, вы пьяны? Какой копирайт, о чем идет речь? Мне этого кода достаточно, я добавил маленькую поправку, возможно, этот код будет кому-то полезен...
что ты в тот код добавил , кроме буквы одной ?
MARAZM (19 янв 2024, в 23:26)
Девушка, вы пьяны? Какой копирайт, о чем идет речь? Мне этого кода достаточно, я добавил маленькую поправку, возможно, этот код будет кому-то полезен...
Сегодняв в H:i и то ошибся в буквах то..)
d1nka (20 янв 2024, в 0:03)
Сегодняв в H:i и то ошибся в буквах то..)
Динка резинка *biggrin*
Онлайн: 6
Время:
Gen. 0.1102
(c) ByMAS.RU 2010-2025