Не работает обработчик даты

133
07 сентября 2019, 20:00

написал скрипт, который выводит из базы данных дату последнего действия. Но он не работает, пожалуйста помогите решить проблему :)

    <?php 
  $mysqldate = 1548841956; # Это дата получаемая из базы данных

  # Перевод даты из базы  в формат времени Unix 
  $time = strtotime($mysqldate);
  # Создаем ассоциативный массив где каждому числу месяца присваем название месяца
  $month_name = array( 
    1 => 'января', 
    2 => 'февраля', 
    3 => 'марта', 
    4 => 'апреля', 
    5 => 'мая', 
    6 => 'июня', 
    7 => 'июля',
    8 => 'августа', 
    9 => 'сентября', 
    10 => 'октября', 
    11 => 'ноября', 
    12 => 'декабря' 
  );
  #Получаем название месяца, здесь используется наш созданный массив
  $month = $month_name[ date( 'n',$time ) ]; 
    $day   = date( 'j',$time ); # С помощью функции date() получаем число дня
    $year  = date( 'Y',$time ); # Получаем год
    $hour  = date( 'G',$time ); # Получаем значение часа
    $min   = date( 'i',$time ); # Получаем минуты
    $date = "$day $month $year, $hour:$min";  # Собираем пазл из переменных
  echo "Последний вход: ".$date; #Выводим преобразованную дату на экран
  ?>

На выходе он выводит следующее: Последний вход: 1 января 1970, 3:00

Answer 1
# Перевод даты из базы  в формат времени Unix 
$time = strtotime($mysqldate);

$mysqldate ($mysqldate = 1548841956;) уже в формате времени Unix. Так что данное преобразование не требуется.

С учетом того что date() понимает и сложные форматы даты, ваш код можно упростить до:

$mysqldate = 1548841956; # Это дата получаемая из базы данных
# Создаем ассоциативный массив где каждому числу месяца присваем название месяца
$month_name = array(
    1 => 'января',
    2 => 'февраля',
    3 => 'марта',
    4 => 'апреля',
    5 => 'мая',
    6 => 'июня',
    7 => 'июля',
    8 => 'августа',
    9 => 'сентября',
    10 => 'октября',
    11 => 'ноября',
    12 => 'декабря'
);
#Получаем название месяца, здесь используется наш созданный массив
$month = $month_name[ date( 'n', $mysqldate ) ];
echo "Последний вход: " . date("j $month Y, в G:i", $mysqldate);
READ ALSO
Wordpress - задать условие

Wordpress - задать условие

Есть вывод дочерних рубрик с постами одной указанной рубрики с id 23Все работает прекрасно, но нужно задать условие, не выводить рубрики, у которых...

132
Запустить файл из консоли как PHP

Запустить файл из консоли как PHP

Есть файлик без расширения, именуемый testfile, с содержимым:

154
Обрезка изображения на клиенте или на сервере?

Обрезка изображения на клиенте или на сервере?

Подскажите на какой стороне лучше резать изображение? Сам сайт на ограниченное посещение пользователей нагрузка не должна быть большей...

143
Преобразование текста в картинку PHP

Преобразование текста в картинку PHP

я пытаюсь преобразовать текст в картинку с помощью PHP, есть полностью работоспособный код, который без проблем преобразует текст в картинку,...

143