Показать сообщение отдельно

  #5  
Старый 17.10.2009, 13:01
prescott
Участник форума
Регистрация: 28.07.2008
Сообщений: 158
С нами: 9361826

Репутация: 115
По умолчанию

Сегодня начал разбираться с xpath, вопрос конечно не по PHP, но новую тему создавать смысла думаю нет. Есть XML:

Код:
<products>
  <product name="pr_name">
    <properties>
      <property name="distr">
      http://example.com/distr.exe
      </property>
      <property name="img">
      http://imgs.com/img.jpg
      </property>
    </properties>
  </product>
<products>
Нужно получить ссылку на дистрибутив, указанную в узле <property> с атрибутом name="distr", делаю так:

PHP код:
$xml_string file_get_contents($url);

$xml simplexml_load_string($xml_string);

foreach (
$xml->products->product as $product) {
$distr $product->xpath("properties/property[@name='distr']/text()");
print_r($distr);

$distr - пустой массив, что неправильно делаю? Если писать так: $distr = $product->xpath("properties/property[@name='distr']");

то возвращает узел property со списком атрибутов, значит путь пишу верно, но как получить текстовое значение узла?

Вопрос снят: ссылка на дистрибутив была в CDATA

Последний раз редактировалось prescott; 17.10.2009 в 13:34..
 
Ответить с цитированием