| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Передача параметров в UTF-8 |
| Автор: Kudzu 22.9.2009, 13:14 | ||
| Доброго времени суток! Имеем скрипт на python, в который из пхп передаются параметры на русском языке в UTF-8. Питон вызывается через passthru(). Суть проблемы, в логах вижу вот такую балалайку:
Need Help! |
| Автор: Ипатьев 22.9.2009, 13:42 |
| Наверное, надо перекодировать из utf-8 в ту кодировку, в которой записаны имена файлов на диске? |
| Автор: skyboy 22.9.2009, 13:47 |
| у тебя имя файла на русском. соответственно, возникают проблемы с кодировкой: ты передаешь имя файла в UTF-8(судя по приведенной тобой ошибке). а файловая система ожидает либо koi8, либо cp1251. впрочем, мне кажется возможным, что перекодирование не требуется и подсистема ввода-вывода используемой ОС поддерживает работу с unicode, но такой папки действительно не существует. |
| Автор: Kudzu 22.9.2009, 13:58 |
| ОСь Linux. Локаль ru_RU.UTF-8 присутствует. Я не могу понять кто из участников(PHP,Apache,Python) портит-непонимает юникод. |
| Автор: Ипатьев 22.9.2009, 14:13 |
| Чтобы понять, надо совершать какие-то телодвижения. В просторечии называемые отладкой. Невозможно узнать кодировку имен файлов на своем диске путем беседы на форуме. |
| Автор: Kudzu 22.9.2009, 14:16 |
| Из php вызвал passthru("echo 'слава путену-слава россииу'>/tmp/123456"); dorme:/# cat /tmp/123456 слава путену-слава россииу MC в хексах кажет, что это истинно юникод. WTF? спрашивается |
| Автор: Ипатьев 22.9.2009, 14:21 |
| при чем здесь PHP? имена файлов в /opt/toko/, к которым обращается скрипт, в какой кодировке? |
| Автор: Kudzu 22.9.2009, 14:35 |
| Всем спасибо, проблема решена. В питоне переменной, которая получала русские символы указал unicode(). |