Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Не работает стротайм
Форумы портала PHP.SU » » Вопросы новичков » Не работает стротайм

Страниц (1): [1]
 

1. Test11 - 06 Января, 2016 - 19:14:06 - перейти к сообщению


Почему не работает?
2. dcc0 - 06 Января, 2016 - 20:09:45 - перейти к сообщению
А что такое "Янв"?
Как система должна понять это?
По идее по умолчанию функция понимает, скорее всего, только английские имена месяцев.


Если нужны русские названия месяцев, надо создавать массив соответствий.
3. Test11 - 06 Января, 2016 - 22:09:26 - перейти к сообщению
а сразу никак?
4. dcc0 - 06 Января, 2016 - 23:07:56 - перейти к сообщению
Посмотрите, может, уже есть готовые классы.
С ходу:
http://rche[dot]ru/888_php-date-vyvo[dot][dot][dot]ogo-mesyaca[dot]html
5. Prizma - 07 Января, 2016 - 09:32:54 - перейти к сообщению
dcc0 пишет:
Посмотрите, может, уже есть готовые классы.
С ходу:
http://rche[dot]ru/888_php-date-vyvo[dot][dot][dot]ogo-mesyaca[dot]html

да ты что пугаешь человека... ради 12 месяцев искать какой то класс...

Test11 пишет:
а сразу никак?

как, и еще как.
А точнее очень просто, если ты хочешь использовать именно эту функцию, то надо изменить данные так, чтобы они были корректными например так:
PHP:
скопировать код в буфер обмена
  1. $mounths_en = [
  2.     'January',
  3.     'February',
  4.     'March',
  5.     'April',
  6.     'May',
  7.     'June',
  8.     'July',
  9.     'August',
  10.     'September',
  11.     'October',
  12.     'November',
  13.     'December'
  14. ];
  15. $mounths_ru = [
  16.     'Январь',
  17.     'Февраль',
  18.     'Март',
  19.     'Апрель',
  20.     'Май',
  21.     'Июнь',
  22.     'Июль',
  23.     'Август',
  24.     'Сентябрь',
  25.     'Октябрь',
  26.     'Ноябрь',
  27.     'Декабрь'
  28. ];
  29. $subject = '10 Янв 2000';
  30. $result = str_replace(substr($mounths_ru, 0, 3), $mounths_en, $subject);
  31. echo $result;
6. dcc0 - 07 Января, 2016 - 20:10:42 - перейти к сообщению
И как твой substr тут обрежет "июнь?
7. Prizma - 07 Января, 2016 - 21:17:17 - перейти к сообщению
dcc0 пишет:
И как твой substr тут обрежет "июнь?

до "Июн"

я всего лишь привел пример, а не сделал тебе готовое решение, я не знаю какие у тебя значения месяцев стоят. Поэтому проще убрать substr и в массиве сразу указать те значения которые у тебя.
8. esterio - 13 Января, 2016 - 12:58:20 - перейти к сообщению
смените локаль и будет понимать
http://php.net/manual/ru/function.setlocale.php
9. IllusionMH - 13 Января, 2016 - 13:15:19 - перейти к сообщению
esterio, она ж только на отображение даты повлияет, но не на парсинг.
"http://php.net/manual/ru/function.strtotime.php" пишет:
Первым параметром функции должна быть строка с датой на английском языке

 

Powered by ExBB FM 1.0 RC1