В Joomla всегда появлялась странная ошибка при добавлении новой статьи с фоновым изображением с языком, отличным от английского (для меня это русский). Поле «Finish Publishing» стало текущей, а не «никогда» эквивалентной на русском языке.Надежный strtotime() результат для разных языков
Для сайта в php4 наконец выяснилось, что функция strtotime возвращает разные результаты для произвольных слов. Для «Никогда» это всегда -1, и joomla полагается на этот результат в реализации JDate. Но в другом случае он иногда возвращает действительную дату. Для русского перевода Never (Никогда) это так, но и для одиночного «N» это так, поэтому, если кто-то решил изменить строку на какой-то другой, он или она столкнутся с той же проблемой.
Так код ниже
<?php
echo "Res:".strtotime("N")."<br>";
echo "Res:".strtotime("Nev")."<br>";
echo "Res:".strtotime("Neve")."<br>";
echo "Res:".strtotime("Never")."<br>";
?>
Выходы:
Res:1271120400
Res:-1
Res:-1
Res:-1
Итак, что решения будут в этом случае? Я бы хотел, чтобы не писать обработчик date.php, специфичный для языка, но для изменения метода даты класса JDate, но для изменения недопустимой строки будут использованы изменения, не зависящие от языка.
Спасибо
В чем вопрос вкратце? Какой результат вы хотите получить? Слово «Никогда» не похоже на разумное значение datetime. –
Хорошо, я удивляюсь, почему другие нечувствительные ценности, такие как Never in russian, переведены на разумную дату, и не только русский, сингл «N». Я полагаю, что из-за какого-то преобразования по умолчанию – Maksee