PHP - исходники в UTF-8...
Сегодня в очередной раз собрался “сломать орешек” - разобраться, почему не получалось у меня культурно записать RSS-feed с одного хорошего сайта
Причем я помнил, что у меня были какие-то очень странные траблы, но не помнил какие. После полутора часов копания удалось выявить интересный факт.
Оказалось, что если все исходники (без исключения) записаны в кодировке win-1251, включение такой конструкции:
include_once ('my_unicode_source.php');убивает PHP на корню (в смысле не segfault - а что-то полюбопытнее, попробуйте как-нибудь). То есть - при включении исходника в кодировке UTF-8 c символами вне ASCII со всем кодом происходит что-то совершенно запредельное. Однако раньше я этого не замечал (поскольку все скрипты написаны в win-1251 и шаблоны тоже, а вот RSS-ленту надо бы сразу писать в Юникоде). По первости грешил на PostgreSQL с его переключением кодировок, но в какой-то момент стало понятно, что он там совершенно ни при чем. Потом встретился с другим любопытным фактом, но он уже далеко не курьезен.
И еще. Оказалось, что меня теперь везде преследуют русские Апачи. Когда-же народ перестанет цепляться за эти глупости и займется делом.
Чтобы я еще раз сделал сайт в win-1251...лучше сразу убейте!