Posted 2 марта, 20168 yr comment_102373 Добрый день! При установке языкового пакета возникает ошибка: 1S111/1 XMLReader::readString(): /tmp/IPSlyNduk:1293: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xD1 0x82 0xD0 0xBE Кто знает как исправить? Версия пхп 7.0.1
2 марта, 20168 yr Author comment_102388 6 часов назад, Respected сказал: Снизить версию php А без снижения версии не выйдет никак? Хотя бы подскажите куда копать
6 марта, 20168 yr Author comment_102499 В 02.03.2016 в 17:45, Respected сказал: Не выйдет никак Кстати да, началось все с обновления до версии 5.6.11 а точнее этого: SimpleXML: Refactored the fix for bug #66084 (simplexml_load_string() mangles empty node name). http://bugs.php.net/66084
6 марта, 20168 yr comment_102519 Ну, "никак" и "никогда", слишком категоричное заявление, на мой взгляд. Но, прямо сейчас, парсер XML для разработчиков явно низкий приоритет имеет. ) Пока, что можете копать в сторону libxml_use_internal_errors( true ); Добавьте эту строку в constants.php на время установки языкового пакета, если конкретней. Но на живом форуме, я так эксперементировать не стал бы, пожалуй.
6 марта, 20168 yr comment_102521 8 часов назад, kotishe сказал: Кстати да, началось все с обновления до версии 5.6.11 а точнее этого: SimpleXML: Refactored the fix for bug #66084 (simplexml_load_string() mangles empty node name). http://bugs.php.net/66084 Прежде чем ссылаться на какой-то баг, прочитайте хотя-бы сначала его описания. Даже из школьной программы английского языка понятно, что никакое отношение "empty node name" к "input is not proper utf-8" не имеет. В вашей ошибке говорится о том, что содержимое не является UTF-8. Если редактируете файлы сохраняйте его в правильной кодировке.
6 марта, 20168 yr comment_102534 2 часа назад, soka сказал: Если редактируете файлы сохраняйте его в правильной кодировке. Ошибка к кодировке файла не имеет отношения, о чем уже намекалось выше. И вряд ли ТС что-то редактировал там. Скорее всего, libXML глючит из за изменений в mb-функциях новой версии PHP.
6 марта, 20168 yr comment_102543 38 минут назад, Dmitriy427 сказал: Ошибка к кодировке файла не имеет отношения, о чем уже намекалось выше. Чем? Ссылкой на левый баг? Я вижу конкретно сообщение об ошибке с кодировкой. Чем она вызвана - багом в libXML или кривой кодировки мне не известно. Предположение о том что баг в библиотеке xml можно строить только по тому, что указанные байты являются кодировкой utf-8. Но смущает строка в которой содержится ошибка.
6 марта, 20168 yr Author comment_102557 Ну люди ошибаются, бывает, я просто к тому что проблема есть на последних версиях пхп 5.х и вероятно не только у меня. Сам файл локализации применяется в неизменном виде. Возможности откатиться на более ранюю версию пыхи нет( спаибо Дмитрий про МБ функции я не подумал
6 марта, 20168 yr Author comment_102559 6 часов назад, Dmitriy427 сказал: Ну, "никак" и "никогда", слишком категоричное заявление, на мой взгляд. Но, прямо сейчас, парсер XML для разработчиков явно низкий приоритет имеет. ) Пока, что можете копать в сторону libxml_use_internal_errors( true ); Добавьте эту строку в constants.php на время установки языкового пакета, если конкретней. Но на живом форуме, я так эксперементировать не стал бы, пожалуй. никогда не говори никогда =) Спасибо помогло, ошибка пропала, однако перевод не грузится все равно=(
6 марта, 20168 yr comment_102561 Этот костыль не решает проблему, документ будет парсится до первой и дальнейший разбор прекратится. Похоже что в XMLReader действительно есть какой-то баг. Пишите в IPS - не повезло с им с этой библиотекой.
7 марта, 20168 yr comment_102565 2 часа назад, soka сказал: Этот костыль не решает проблему, документ будет парсится до первой и дальнейший разбор прекратится. Конкретно эта ошибка разбор не прекратит, если используется "этот костыль", но очевидно она там не единственная. Безапеляционные заявления, при отсутствие ясного понимания причин проблемы, вам авторитета не добавят.
7 марта, 20168 yr comment_102584 Проверено. Суть проблемы мне не известно, но если дальнейшей разбор документа в обычном режиме прекращается, логически можно предположить что он прекратится и при подавление ошибки, разница только в том, что не будет выброшена ошибка. Ни в Simplexml, ни в DOMDocument проблем с парсингом xml нету.
7 марта, 20168 yr comment_102586 Вы можете что угодно логически предполагать, а я просто знаю, поскольку с подобными ошибками уже встречался на практике. В новом фреймворке ips выполнение скрипта может быть прервано обычным E_WARNING из-за повсеместного применения конструкций вида: try{ ... } catch( \IPS\Class\Exception $e ) { return false; } Подавление ошибок такое развитие событий предотвращает, зачастую.
7 марта, 20168 yr comment_102596 Я сейчас не о ips говорю. Вы подавляете ошибку чтобы не прекратить работу форума выбросом варнинга, но xmlreader все равно не будет дальше разбирать документ и импорт каждого файла закончится до первой ошибки в нем. О чем ТС и говорит, что перевод у него не полный.
7 марта, 20168 yr comment_102603 Ещё раз, могу по слогам, но уже в последний раз, говорю: Конкретно эта ошибка не может, сама по себе, прервать работу любого модуля libXML, включая ридер . Читайте доки - www.xmlsoft.org/html/libxml-xmlerror.html .
7 марта, 20168 yr comment_102607 Как вы там говорили - вы можете предполагать что угодно, на деле же все обстоит иначе. Зачем вы мне втираете эту дичь, возьмите, напишите пару строчек кода и проверьте. Для документации незачем лазить в эту степь, достаточно посмотреть описание метода read() http://php.net/manual/ru/xmlreader.read.php и возвращаемого значения - FALSE в случае ошибки. http://php.net/manual/ru/xmlreader.read.php#114248 Вы спорите не предположениях что не может, а вам приводят доводы на практике и результате такого костыля - язык не импортируется (скорее всего только частично если посмотреть в бд). 34 минут назад, Dmitriy427 сказал: Конкретно эта ошибка не может,сама по себе С каких пор варнинги не могут прекратить работу какой-то функции?
7 марта, 20168 yr comment_102608 Я не собираюсь бесконечно спорить с воинствующим профаном, это крайнее сообщение для Вас. Ошибка уровня E_WARNING может прервать работу функции, только если автор функции этого захотел.
7 марта, 20168 yr comment_102615 То же самое я могу сказать о вас. Но ведь этого не говорю, потому что мне не известен уровень ваших знаний, интересно каким образом вы определили мой чтобы называть меня профаном? Пока я могу сказать, что вы явно не хотите слушать и упорно пытаетесь доказать свой тезис с пеной у рта, не обращая никакого внимания на реальные доводы которые вам приводят, будто не дай бог это окажется правдой. Ясно, на словах вас не переубедить и никакой информации не донести, тут явный блок - "профан что-то мне втирает". Не хотите слушать, ваше дело, проверьте тогда сами свои утверждения, докажите несостоятельность моих, и не ссылкой на какой-то код в котором вы не разбираетесь. Проведите опыты - скачайте лэнгпак и попробуйте прочитать файлы xmlreader'ом. Отключите вывод ошибок из libxml_use_internal_errors и попробуйте снова. Мне ничего доказывать не нужно, докажите себе.
24 марта, 20168 yr comment_103523 kotishe, 4.1.9 c этого форума успешно встала на 2 форума. Остальные пока не обновлял. Но думаю так же не будет проблем. Ищите на своей стороне.
24 марта, 20168 yr Author comment_103524 2 минуты назад, rustav сказал: kotishe, 4.1.9 c этого форума успешно встала на 2 форума. Остальные пока не обновлял. Но думаю так же не будет проблем. Ищите на своей стороне. какая версия пхп у вас? у меня 7.0.4
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.