Intereting Posts
Обновление информации о базе данных с помощью кнопки onclick анализировать естественный язык PHP curl сбрасывает длину контента, если CURLOPT_POST задано с curl_setopt_array? Неопределенная переменная: user laravel Изменение конфиденциальности старых сообщений Facebook с помощью Graph API Может ли свойство класса php быть равно другому свойству класса? Где PHP хранит журнал ошибок? (php5, apache, fastcgi, cpanel) Найдите часть строки и удалите ее из массива Можно ли присвоить значение переменной по умолчанию для выбора формы в Laravel Как добавить пробел в строку заглавными буквами, но сохранить непрерывные капиталы вместе с помощью PHP и Regex? Codeigniter – Как получить данные данных из ajax? отправить запрос на завивание с заголовком http Загружать несколько изображений с помощью php и sql Неверный номер страницы в функции setPage (): 0 wp-admin показывает пустую страницу, как ее исправить?

Использование cURL и simpleXMLElement для извлечения данных. Как получить значение элемента XML после XPATH?

У меня возникают проблемы с извлечением данных из объекта SimpleXMLElement. Вот основы кода, который я использую:

curl_setopt( $ch, CURLOPT_URL, $URL ); $html = curl_exec( $ch ); $html = $tidy->parseString( $html, $tc, 'utf8' ); $tidy->cleanRepair(); $html = $tidy->body()->value; $xml = new SimpleXMLElement( $html ); $xml = $xml->xpath( "//ul[@id='wxoptions']/li[3]/a" ); //Your XPATH print_r( $xml ); 

Это переход к правильному элементу HTML, который я хочу, но печатает:

 Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [href] => http://www.mylink.com [title] => mylink ) [0] => mylink ) ) 

Мне нужно значение [href], « http://www.mylink.com » в этом массиве. Как извлечь из вывода, который я включил? Я тупой и очень новый для SimpleXMLElement и Xpath.

Использовать итерацию и атрибуты

 foreach ( $xml->xpath( "//ul[@id='wxoptions']/li[3]/a" ) as $node) { $href = $node->attributes("href"); } 

Или прямо называется:

 $href = $xml[0]->attributes("href");