PHP 5.4.* и кодировка Windows-1251 [РЕШЕНО ОТКАТОМ на 5.3.*]

Всем привет!
На свежесобранной системе столкнулся с такой проблемой. Есть два сайта. Один работает в кодировке UTF-8, другой в Windows-1251. На дедике оба сайта работают прекрасно. А на компе тот сайт, который в Windows-1251, глючит. PHP не видит русских символов в кодировках, отличных от UTF-8. Данные через GET и POST передаются, но, стоит переменную пропустить через какую-то функцию (например, через htmlspecialchars), текст исчезает. С латиницей все в порядке, а с кириллицей такая беда. На старой генте таких глюков нет, потому, я думаю, что-то не включено в поддержку PHP или в саму ОС. Но что? Я первый раз такое вижу.
Какие есть предположения?

AddDefaultCharset foo bla

AddDefaultCharset foo bla

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

...

Так вот нет. Это директива apache, и она у меня настроена. Апач-то как раз данные передает нормально, с отображением текста проблем нет, а вот PHP обрабатывает как-то странно. Тут явно PHP чего-то не хватает.

«Зрячий, незрячий, а если не смотришь - всё равно не увидишь» - Затойчи.

Глупый вопрос

LavKraft написал(а):
Так вот нет. Это директива apache, и она у меня настроена. Апач-то как раз данные передает нормально, с отображением текста проблем нет, а вот PHP обрабатывает как-то странно. Тут явно PHP чего-то не хватает.

Версии php на системе где всё работает и на проблемной совпадают?

:wq
--
Live free or die

...

На Gentoo, где все работает:

# eselect php list cgi
  [1]   php5.3 *

На CentOS (она на дедике), где работает:

# php --version
PHP 5.3.3

На Gentoo, где не работает:

# eselect php list cgi
  [1]   php5.4 *

Да неужели это в 5.4.* такое безобразие? Сейчас соберу 5.3.* попробую. Отпишусь потом.

«Зрячий, незрячий, а если не смотришь - всё равно не увидишь» - Затойчи.

/

LavKraft написал(а):
Да неужели это в 5.4.* такое безобразие?

За определениями и толкованиями шёл бы ты в... правильно, апстрим :)

По личному опыту (квест с миграцией на (5.4) несколько ранее был пройден): в 5.4 был выпилен ряд сохранявшихся заради совместимости рудиментов.
Все вопросы к коду (похапе).

ЗЫ: Только меня глючит на тему того, что проблема ни фига не решена (решена она будет когда ты раскопаешь и зацитируешь проблемный кусок кода (и не забудешь привести приемлемую для (5.4) трансляцию), а просто закрыта (или зарыта, как кому больше нравится)?

:wq
--
Live free or die

...

Я просто не могу цитировать этот код. Права не имею. А если бы мог, кода очень и очень много. Проблема решена временно, а совместимостью с 5.4 я пока просто не занимался. Проблема появлялась при проходе текста через функцию PHP htmlspecialchars (). Пока ничего другого не знаю.

«Зрячий, незрячий, а если не смотришь - всё равно не увидишь» - Затойчи.

/

Я конечно понимаю: вечер и всё такое...
Но ты читай что пишешь, не уподобляйся известно кому.

Применительно к (5.4) проблема не решена.
Она зарыта откатом на (5.3).

LavKraft написал(а):
Я просто не могу цитировать этот код. Права не имею. А если бы мог...

...то его ещё и читать надо.
Потому выделить минимально достаточный для демонстрации проблемы образец будет правильнее.

LavKraft написал(а):
А если бы мог, кода очень и очень много. Проблема решена временно, а совместимостью с 5.4 я пока просто не занимался. Проблема появлялась при проходе текста через функцию PHP htmlspecialchars (). Пока ничего другого не знаю.

Повторюсь: это решение проблемы работоспособности, но не совместимости с (5.4).
По косвенным признакам разработка данного проекта в настоящее время также висит на тебе.
Если ты хочешь продолжать использовать Gentoo (почто CentOS на сервере?!?), то я бы рекомендовал проработать вопросы обеспечения наличия (5.3) средствами локального оверлейчика и миграции на (5.4).

В моей практике проблемы с однобайтными кодировками не было.
Но там исторически сложилась другая конфигурация (cgi не использовался, хотя для cli проверка прошла успешно) и cp1251 я по понятным причинам не использовал.

ЗЫ: Не забыли ли авторы исходной версии про convert_cyr_string?

:wq
--
Live free or die

...

CentOS потому, что это было самое приемлемое, что предлагал провайдер. Да, верно, проблема решена откатом. При чем, проблема работоспособности существующего кода, а не его совместимости. А когда у меня будет что-то конкретное по теме, и если будет, и если буду я заниматься миграцией этого кода на 5.4.* - я напишу. Пока это все.

«Зрячий, незрячий, а если не смотришь - всё равно не увидишь» - Затойчи.

...

Ну, конечно, дело в php-5.4.* Я поставил 5.3.15 (как и на рабочей генте), и все стало хорошо. Надо будет почитать о PHP 5.4. Спасибо за подсказку!

«Зрячий, незрячий, а если не смотришь - всё равно не увидишь» - Затойчи.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".