2014-01-27 6 views
-4

Я получаю данные из базы данных, которая дает мне дату в формате, таком как 2014-01-06 06:13:06. Я хочу преобразовать эту дату в формат Jan 6th 2014.как преобразовать dateformat в php?

Вот мой код:

<?php 
$query="SELECT Min(transaction_date) as start,Max(transaction_date) as end from transactions"; 
$result1= mysql_query($query) or die(mysql_error()); 
$ors1=mysql_fetch_array($result1); 
$date= $ors1['start']; 
echo date_format($date, 'g:ia \o\n l jS F Y'); 
?> 
+2

'echo date ('g: ia \ o \ n l jS F Y', strtotime ($ ors1 ['start']))' – softsdev

ответ

1

Тест один

<?php 
    $query="SELECT Min(transaction_date) as start,Max(transaction_date) as end from transactions"; 
    $result1= mysql_query($query) or die(mysql_error()); 
    $ors1=mysql_fetch_array($result1); 
    $date= $ors1['start']; 
    echo date('dS M Y' ,strtotime($date)); 
?> 

Reference URL: PHP Documentation

0

Используйте strtotime, чтобы получить временную метку из строкового представления времени. Затем используйте date для форматирования метки времени в любом формате.

например.

$formatted_date = date('g:ia \o\n l jS F Y', strtotime('2014-01-06 06:13:06 ')); 
0

Вы также можете попробовать так:

<?php 
echo 'Current time: ' . date('Y-m-d H:i:s') . "\n"; 

$format = 'Y-m-d'; 
$date = DateTime::createFromFormat($format, '2009-02-15'); 
echo "Format: $format; " . $date->format('Y-m-d H:i:s') . "\n"; 

$format = 'Y-m-d H:i:s'; 
$date = DateTime::createFromFormat($format, '2009-02-15 15:16:17'); 
echo "Format: $format; " . $date->format('Y-m-d H:i:s') . "\n"; 

$format = 'Y-m-!d H:i:s'; 
$date = DateTime::createFromFormat($format, '2009-02-15 15:16:17'); 
echo "Format: $format; " . $date->format('Y-m-d H:i:s') . "\n"; 

$format = '!d'; 
$date = DateTime::createFromFormat($format, '15'); 
echo "Format: $format; " . $date->format('Y-m-d H:i:s') . "\n"; 
?> 

Приведенный выше пример будет что-то подобное:

Current time: 2010-04-23 10:29:35 
Format: Y-m-d; 2009-02-15 10:29:35 
Format: Y-m-d H:i:s; 2009-02-15 15:16:17 
Format: Y-m-!d H:i:s; 1970-01-15 15:16:17 
Format: !d; 1970-01-15 00:00:00 

для получения дополнительной информации: http://in1.php.net/manual/en/datetime.createfromformat.php

0

Вы можете попробовать это само по себе в MySQL

SELECT 
    DATE_FORMAT(start, '%M %D %Y') as start_formatted, 
    DATE_FORMAT(end, '%M %D %Y') as end_formatted 
FROM 
    (SELECT 
     Min(transaction_date) as start, Max(transaction_date) as end 
    from 
     transactions) t; 

Пример

mysql> SELECT DATE_FORMAT(NOW(),'%M %D %Y'); 
+-------------------------------+ 
| DATE_FORMAT(NOW(),'%M %D %Y') | 
+-------------------------------+ 
| January 27th 2014    | 
+-------------------------------+ 
1 row in set (0.00 sec) 
0

Попробуйте как этот

$date= $ors1['start']; 
$objdate=new DateTime($date); 
echo date_format($objdate, 'g:ia \o\n l jS F Y'); 
Смежные вопросы