[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Php date()
maken
Доброго дня.

echo "<td>".$row["i_date"]."</td>";

Вставляет в таблицу корректную дату, но в формате ГГГГ-ММ-ДД.
echo "<td>".date("d.m.Y", $row['i_date'])."</td>";

Вставляет в таблицу дату в формате ДД-ММ-ГГГГ, но дата ВСЕГДА 01.01.1970
Вопрос, что не так?



Спустя 20 минут, 18 секунд (18.02.2010 - 11:14) stepan написал(а):
Не совсем понятен твой вопрос - гляди здесь.

Спустя 2 часа, 47 минут, 51 секунда (18.02.2010 - 14:02) maken написал(а):
Цитата (stepan @ 18.02.2010 - 08:14)
Не совсем понятен твой вопрос - гляди здесь.





Я там и смотрел.
Поясню вопрос, действительно я не совсем понятно спросил:
Выводится дата в формате год-месяц-день.
Хочу день-месяц-год.

Функция Date(); почему то формат меняет на правильный, а значение возвращает неверное. Для любого значения $row["i_date"] в таблицу пишется 01-01-1970
echo "<td>".date("d.m.Y", $row['i_date'])."</td>";

Что я тут написал не правильно?
Может ну её эту фукцию, может еще как это делается?

Спустя 1 час, 8 минут, 52 секунды (18.02.2010 - 15:11) stepan написал(а):
Цитата
date ( string format [, int timestamp] )

Проверяй чему равен $row['i_date']
Вот от этого примера отталкивайся:
echo "<td>".date("d-m-Y", time() )."</td>";

Спустя 15 минут, 36 секунд (18.02.2010 - 15:26) sergeiss написал(а):
Цитата (maken @ 18.02.2010 - 15:02)
Я там и смотрел.

Наверное, плохо смотрел!

Из хэлпа
string date ( string $format [, int $ timestamp ] )</span>

А какой тип у возвращаемого из таблицы $row['i_date']? Готов поспорить, что он не имеет никакого отношения к "количеству секунд, прошедших с начала Эпохи Unix".

PS. Я так подозреваю, что stepan то же самое и имел ввиду, но несколько завуалированно, чтобы ты сам догадался.

Спустя 43 минуты, 6 секунд (18.02.2010 - 16:09) stepan написал(а):
Цитата (sergeiss @ 18.02.2010 - 12:26)
PS. Я так подозреваю, что stepan то же самое и имел ввиду, но несколько завуалированно, чтобы ты сам догадался.

Именно это я имел введу. wink.gif

Спустя 38 минут, 29 секунд (18.02.2010 - 16:48) maken написал(а):
Всем спасибо. Подсказали на другом форуме.

Цитата
В пхп такой функции нет, нужно писать самому, что бы дату из базы MySQL переворачивала. Для небольших выборок годится, для больших может тормозить.
Зато есть функция в самом MySQL:

Вместо
SELECT i_date FROM ...

пишим
SELECT DATE_FORMAT(i_date,'%d-%m-%Y') AS i_date, FROM ...


За что им отдельное спасибо.



Спустя 14 минут, 31 секунда (18.02.2010 - 17:02) stepan написал(а):
Что просил, то и получил - перед тем как создавать тему, не поленитесь в следующий раз сформулировать четкий, легко восприимчивый вопрос.

Если сравнивать весь этот разговор, то вот на что похож:
- Подскажите как распечатать мне информацию
- Все мне на другом форуме подсказали что можно эту инфу купить в ближайшем киоске.

Спустя 3 часа, 8 минут, 25 секунд (18.02.2010 - 20:11) MatrixGod написал(а):
01.01.1970 это начало эпохи юникс.

функция date() возвращает timestamp, то есть число равное количеству секунд прошедших с этой даты.

тебе надо использовать time() и все будет ок!


 ! 

М
Извини, но ты написал полную хрень!!!
sergeiss

От sergeiss: Я выше даже приводил выдержку из хэлпа, где четко сказано, что date() возвращает СТРОКУ (!!!), а не число секунд. Вот time() как раз возвращает это самое число секунд.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.