Особистий блог Blohher'a

Читай Blohher брат

Реклама Google
Популярність сайта і якісний пошук

Преобразование SQL даты в PHP дату

Эта записка о частой необходимости программиста, создающего сайты. Все выглядит так: в базе данных тип DATE, который в РНР выглядит как обычная строка "2011-06-13". Наша цель преобразовать эту дату в формат, пригодный для использования функцией date(). А с помощью этой функций мы сможем получить все что угодно:

  • день
  • месяц буквами (полный, 3 буквы)
  • год
  • високосный год?
  • день недели
  • номер месяца

Все настолько просто

$phpdate = strtotime( $mysqldate );

Используем так

$pattMonth = 'M';
$pattDay = 'j';
$pattYear = 'Y';
$phpdate = strtotime($sqlDate);
$day = date($pattDay, $phpdate);
$mon = date($pattMonth, $phpdate);
$year = date($pattYear, $phpdate);

Реальный пример, как получить дату вида 27 декабря, 2011

$phpdate = strtotime($date);
$day = date('j', $phpdate); // day
$mon = getRusDate(date('M', $phpdate)); // month
$year = date('Y', $phpdate); //year 2011
$tdate = "$day $mon, $year";
echo $tdate;

На всякий случай код для обратного действия - записи из РНР в базу данных

$mysqldate = date( 'Y-m-d', $phpdate );
$mysqldatetime = date( 'Y-m-d H:i:s', $phpdate );

Получение полной временной метки

$mysqldate = $arrayData[$id]['date'].' '.$arrayData[$id]['time'];
$phpdate = strtotime($mysqldate);
$need = date('r', $phpdate);

На входе у нас "2011-04-29 02:54:00", на выходе "Thu, 14 Jul 2011 22:14:00 +0400". Это живой пример для RSS.

Думки відвідувачів

Залишити свою думку »

 
Blohher
14 ноября 2012 ; 18:52:07
 
Щойно знадобився код оцей $mysqldate = date( 'Y-m-d', $phpdate ); Дякую самому собі за цей блог
Blohher
14 ноября 2012 ; 18:56:15
 
приклад вставки в базу:
$tizerdb = $this->load->database('tizerdb', true);
$db = 'tizer';
$insert['domen']=$_server['http_host'];
$insert['date']=date('y-m-d', time());
$tizerdb->insert($db, $insert);
Маша
22 июня 2015 ; 13:16:31
 
Вопрос, а как можно преобразовать в обратном порядке данные полученные из strtotime.
Тоесть числовую строку (1434920400) в нормальную дату (22.06.2015)?
blohher
3 сентября 2015 ; 14:08:11
 
Маша ищи в гугле, там все есть

Залишити коментар

Нік
 
E-mail
 
Сайт
 
Текст
 

 
Blohher - Блог розробника сайтів