2011-01-03 4 views
1

Я получаю дату в следующем формате, который является строкой:PHP даты форматирования, без использования даты функции

31_Dec_2010 

Теперь, мне нужно, чтобы преобразовать его в следующем формате 2

2010-12-31 //(for use in mysql query) 

и

31 Dec, 2010 //(for displaying purpose) 

I не может использовать функции Date-Time, потому что я бегу код на PHP 4.8

Пожалуйста, предложите мне каким-то образом, другой тогда "взрываются" функция

+0

В документации указано, что 'date' доступен в PHP 4 ... –

+0

@Felix Kling: http://fr2.php.net/manual/en/class.datetime.php – Shikiryu

+0

Это очень простая операция с строкой. Вам отчаянно нужно изучить основные манипуляции с строками. –

ответ

4

Вы можете сделать так:

echo date('Y-m-d', strtotime(str_replace('_', '-', '31_Dec_2010'))); 

Выход:

2010-12-31 

Я могу не использовать функции Date-Time , потому что я бегу код на PHP 4.8

Эти функции доступны в версии PHP вы используете :)

+1

.. и echo date ('d M, Y', strtotime (str_replace ('_', '-', '31_Dec_2010'))); для «31 декабря 2010» – powtac

+0

И 'date ('d M, Y', strtotime (str_replace ('_', '-', '31_Dec_2010')));'? – Shikiryu

+0

спасибо Sarfraz и ClemDesm –

0

По дате функций Руководство по РНР доступны с версия 4. Предполагая, что вы не можете обновить (по какой-либо причине), вы все равно сможете их использовать.

Вы должны пересмотреть использование взрыва/раскола, вы можете безопасно разделить на _, чтобы получить каждую часть даты. Единственная утомительная часть этого заключается в том, чтобы преобразовать месяц в числовое значение, для MySQL также может быть удобный синтаксис.

Смежные вопросы