Не правильное определение типов данных!!!!

gav

Новичок
Не правильное определение типов данных!!!!

Из БД Informix с помощью запроса получаю дату. В БД дата храниться в виде 16/11/2007 !!
В переменную же дата записывается в следуючем виде: 16.11.07 но мне обязательно нужен вот такой формат => 16.11.2007 !!!!!
Думал преобразовать с помощью $dd = date('j.m.Y', strtotime("16.11.07")); - но PHP не понимает такой записи 16.11.07 он понимает только такую 16/11/07 !!

Подскажите плиз почему PHP меняет "/" на "." при выборке из БД ???? Как можно это исправить ?????

возможно туплю !!!
 

Wicked

Новичок
gav,
мальчик мой, прежде чем орать
Думал преобразовать с помощью $dd = date('j.m.Y', strtotime("16.11.07")); - но PHP не понимает такой записи 16.11.07 он понимает только такую 16/11/07 !!
неплохо бы в этом убедиться.
PHP:
var_dump($t = strtotime("13/11/07"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13.11.07"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13/11/2007"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13.11.2007"), date(DATE_ATOM, $t));
Код:
bool(false)
string(25) "1970-01-01T00:00:00+00:00"
int(1195218667)
string(25) "2007-11-16T13:11:07+00:00"
bool(false)
string(25) "1970-01-01T00:00:00+00:00"
int(1194912000)
string(25) "2007-11-13T00:00:00+00:00"
 

gav

Новичок
Автор оригинала: Wicked
gav,
мальчик мой, прежде чем орать
неплохо бы в этом убедиться.
PHP:
var_dump($t = strtotime("13/11/07"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13.11.07"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13/11/2007"), date(DATE_ATOM, $t));
var_dump($t = strtotime("13.11.2007"), date(DATE_ATOM, $t));
Код:
bool(false)
string(25) "1970-01-01T00:00:00+00:00"
int(1195218667)
string(25) "2007-11-16T13:11:07+00:00"
bool(false)
string(25) "1970-01-01T00:00:00+00:00"
int(1194912000)
string(25) "2007-11-13T00:00:00+00:00"
вот мой результат выполния этих функций:

PHP:
int(1200002400) string(23) "FriAMEETE_AMEET+0200Jan" 
int(-1) string(23) "ThuAMEETE_AMEET+0200Jan" 
int(1200002400) string(23) "FriAMEETE_AMEET+0200Jan" 
int(-1) string(23) "ThuAMEETE_AMEET+0200Jan"
Чё то совсем не так как у тебя !!!!!
 

Фанат

oncle terrible
Команда форума
а при чем тут типы данных?
и зачем здесь вообще любые функции даты и времени, если вся задача - преобразовать строку от одного вида к другому?
 

Wicked

Новичок
у меня была надежда на то, что у тебя PHP > 5.1.1, а в случае, если все-таки меньше, то ты догадаешься найти значение константы DATE_ATOM, которое равно "Y-m-d\TH:i:sP".

И не надо ставить столько восклицательных знаков.
 

gav

Новичок
Автор оригинала: Wicked
у меня была надежда на то, что у тебя PHP > 5.1.1, а в случае, если все-таки меньше, то ты догадаешься найти значение константы DATE_ATOM, которое равно "Y-m-d\TH:i:sP".

И не надо ставить столько восклицательных знаков.
Да дело не в Y-m-d\TH:i:sP (не так я и чайник уже)!
php у меня 4.4.7

вот результат:

int(-1) string(20) "1970-01-01T01:59:59P"
КОД:
var_dump($t = strtotime('16.11.07'), date('Y-m-d\TH:i:sP', $t));

а мне надо 16.11.2007 !
 

Фанат

oncle terrible
Команда форума
зачем здесь вообще любые функции даты и времени, если вся задача - преобразовать строку от одного вида к другому?
 

gav

Новичок
Автор оригинала: *****
зачем здесь вообще любые функции даты и времени, если вся задача - преобразовать строку от одного вида к другому?
Дело в том что непонятно почему PHP сам из 16/11/2007 какимто оброзом переконвертирует в 16.11.07 (при выборе даты из БД) ??? Где он это делает ??? И как это исправить ????
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
непонятно почему PHP сам из 16/11/2007 какимто оброзом переконвертирует в 16.11.07 (при выборе даты из БД)
а парни-то не знают...
 

gav

Новичок
дело всё в php.ini (просто одну строчку раскоментировать надо и всё)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Жаль ни кто и не помог !!!!
 

kruglov

Новичок
gav
А почему жаль? Вам разобраться надо было или материальную помощщь получить?
 
Сверху