Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Вывод даты на русском / 7 сообщений из 7, страница 1 из 1
09.04.2014, 19:48
    #38610434
minioracle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
Доброе время суток.
Подскажите пожалуйста, как преобразовать дату из БД которая имеет формат ДД.ММ.ГГГГ 00:00:00
Как эту дату преобразовать в формат 01 января 2014.
Нашел такой вариант, но он не работает
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
// забирает текущее время в массив
$timestamp = time();
$date_time_array = getdate($timestamp);

$hours = $date_time_array['hours'];
$minutes = $date_time_array['minutes'];
$seconds = $date_time_array['seconds'];
$month = $date_time_array['mon'];
$day = $date_time_array['mday'];
$year = $date_time_array['year'];

// используйте mktime для обновления UNIX времени
// добавление 45 дней к $day
$timestamp = mktime($hours,$minutes,$seconds,$month,$day + 45,$year);
$rusmonth = strftime('%B',$timestamp);
$trans = array("January" => "января",
               "February" => "февраля",
               "March" => "марта",
               "April" => "апреля",
	       "May" => "мая",
               "June" => "июня",
			   "July" => "июля",
			   "August" => "августа",
			   "September" => "сентября",
			   "October" => "октября",
			   "November" => "ноября",
			   "December" => "декабря"
			   );
$rusmonth = strtr($rusmonth, $trans);
echo strftime('%e',$timestamp);
echo ' '; 
echo $rusmonth;
echo ' ';
echo strftime('%Y',$timestamp);
echo 'г.';



Модератор: Не забываем указывать используемый язык программирования!
Название топика исправлено.
...
Рейтинг: 0 / 0
09.04.2014, 20:07
    #38610443
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
minioracleне работаетЧто именно не работает?

автор
Код: php
1.
2.
$trans = array("January" => "января",
..........

А что, установку локали сегодня уже отменили?
Код: php
1.
2.
3.
4.
5.
$ php -r 'echo strftime("%B\n", time());'
April
$ php -r 'setlocale(LC_TIME, "ru_RU.UTF-8"); echo strftime("%B\n", time());'
Апрель
$
...
Рейтинг: 0 / 0
09.04.2014, 20:12
    #38610444
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
А, у Вас месяц не в строгом соответствии с локалью... Тогда лучше использовать числовое представление месяца - '%m', не полагаясь на установленную по дефолту локаль.
...
Рейтинг: 0 / 0
09.04.2014, 20:24
    #38610451
minioracle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
vkle,

По коду который я указал выше, у меня отображается 1 января 1970г.
Вот мне и интересно как мне выводить дату $mypost['date']
когда я вывожу обычно
Код: php
1.
echo $mypost['date']


то выводится обычная дата 09.04.2014 00:00:00
...
Рейтинг: 0 / 0
09.04.2014, 21:11
    #38610483
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
minioracleПо коду который я указал выше, у меня отображается 1 января 1970г.Проверьте результат mktime() для начала. Если будет FALSE, то проверяйте аргументы.
...
Рейтинг: 0 / 0
09.04.2014, 21:34
    #38610494
minioracle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
vkle,

Все нашел Вариант
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<?php
function printdate($date,$type=false){
if ($type==false){
$month_name=array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");}
else 
{$month_name=array("Января","Февраля","Марта","Апреля","Мая","Июня","Июля","Августа","Сентября","Октября","Ноября","Декабря");}
$newdate=strtotime($date);
$month=(int)date('m',$newdate)-1;
return date('d',$newdate)." ".$month_name[$month]." ".date("Y H:i",$newdate);
}



Выводим
Код: php
1.
2.
<?php echo printdate($mypost['dates'],"хренэ");
?>
...
Рейтинг: 0 / 0
09.04.2014, 23:02
    #38610553
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вывод даты на русском
Код: php
1.
2.
3.
4.
$formatter = new IntlDateFormatter('ru_RU', IntlDateFormatter::FULL, IntlDateFormatter::FULL);
$formatter->setPattern('d MMMM');
echo $formatter->format(new DateTime()); // 22 января
echo $formatter->format(new DateTime('05-03-2013')); // 5 марта
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Вывод даты на русском / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]