Ответов: 4 Просмотров: 310
|
Подскажите если кто знает как решить проблему.
Запускаую скрипт, если в файле нет таких вот символов 1/4" & , то я нормально получаю массив.
CODE ( htmlphp):
скопировать код в буфер обмена
<?php function print_arr($arr){ echo "<pre>"; echo "</pre>"; } if (!$xml) { echo "Ошибка загрузки XML\n"; echo "\t", $error->message; } } $attributes = $xml->attributes();//получаем массив атрибутов корневого узла 'date' => (string)$attributes['date'],//все узлы и данные // хранятся как объекты класса SimpleXMLElement, //принудительно преобразуем в строку (string) 'name' => (string)$xml->shop->company, ); foreach ($xml->shop->offers->offer as $xmlOffer){ $attributes = $xmlOffer->attributes();//аналогично получаем // массив атрибутов предложений if ((string)$attributes['available']=='true'){ $res['offers'][(string)$attributes['id']] = array( 'id' => (string)$attributes['id'], 'price' => (string)$xmlOffer->price, 'name' => (string)$xmlOffer->name, 'Code' => (string)$xmlOffer->vendorCode, 'url' => (string)$xmlOffer->url, 'description' => (string)$xmlOffer->description, ); } } unset($xml);//Переменная $xml больше не нужна, освободим память print_arr($res); ?>
Если же присутствуют такие символы 1/4" & тогда выдает ошибку
CODE ( htmlphp):
скопировать код в буфер обмена
Ошибка загрузки XML CData section not finished 8шт 1/4" Головки торцевые: 613 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 PCDATA invalid Char value 3 Sequence ']]>' not allowed in content CData section not finished 13шт 1/4" Головки торцевые: 8& PCDATA invalid Char value 3 PCDATA invalid Char value 3 Sequence ']]>' not allowed in content Fatal error: Call to a member function attributes() on a non-object in G:\OpenServer\domains\Test\3.php on line 59
|