Дата и локаль

dmvlad

Новичок
Дата и локаль

Помогите разобраться с датой, кто сталкивался.
Исходные данные: Задаем дату формата 08/02/2009 (8 февраля), далее преобразуем

PHP:
echo date('Y-m-d', strtotime($ddate));
получаем 2008-08-02 т.е. дата преобразована неверно (должно быть 2009-02-08). Пробовал поставить setlocale(LC_ALL, 'ru_RU');, но не помогает.

Можно как-то заставить принимать такие данные?
 

Фанат

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

dmvlad

Новичок
Вот полные данные - вызываем урл
http://test.localhost/?ddate=08/02/2009

Сам скрипт такой
PHP:
<?php
setlocale(LC_ALL, 'ru_RU');
$ddate = isset($_GET['ddate']) ? $_GET['ddate'] : '0000-00-00';
echo $ddate;
echo "<br />";
echo date('Y-m-d', strtotime($ddate));

?>
-~{}~ 10.06.09 17:09:

Автор оригинала: *****
можно попросить тебя об одном одолжении?
тебя не затруднит процитировать здесь первую строчку из описания этой функции в официальной документации?
заранее огромное спасибо
Из какой функции? Может есть более подходящие функции для такого перевода даты?
 

dmvlad

Новичок
>> strtotime — Преобразует текстовое представление даты на английском языке в метку времени Unix

Эту?? Т.е. выходит нужно обрабатывать строку по другому?
 

Фанат

oncle terrible
Команда форума
поразительная догадливость
скажу тебе по секрету, strtotime - одна из самых бесполезных функций в пхп.
дата в формате 8/02/2009 представляет собой строку. причем весьма примитивного формата. а пхп, как язык обработки гипертекста, имеет в своем арсенале богатейший набор функций для работы со строками.
самая простая - explode
 

dmvlad

Новичок
ок, все понял, спасибо.
explode я и раньше использовал, но тут решил проверить strtotime ...
 

Фанат

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