Проблема с xml_parse

A
На сайте с 14.09.2010
Offline
19
717

Был такой код:

while ($data = fread($fp, 4096)) {

if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf("XML error: %s at line %d\n",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}

Который без проблем парсил xml в кодировке windows-1251

Но после установки на сервер memcached и eaccelerator стал выдавать ошибку.

Я заменил код на следующий:

while ($data = fread($fp, 4096)) {

if (!xml_parse($xml_parser, iconv('cp1251', 'UTF-8', $data), feof($fp))) {
die(sprintf("XML error: %s at line %d\n",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}

Теперь все работает, но думаю это не совсем правильное решение проблемы. Что подскажите, где копать?

OS - ALT Linux

atlantgroup добавил 15.09.2010 в 10:53

Кажется нашел в чем проблема:

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/5.2.5/extensions/xmlrpc.so' - /usr/lib/php/5.2.5/extensions/xmlrpc.so: undefined symbol: php_XML_GetErrorCode in Unknown on line 0

Как это исправить?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий