#php #xpath
#php #xpath
Вопрос:
Здравствуйте, мне было интересно, как я могу оценить путь с помощью php. Вот код:
//Path I want to evaluate -> (.*?)
<p class="row" data-pid="(.*?)"><a href="(.*?)" class="i"></a>
//method using php
$xpath->evaluate('string(.//a/@href)'
Как я могу оценить пути (.*?) с помощью php?
Комментарии:
1. Мне неясно, чего вы хотите достичь. Что вы хотите в результате?
(.*?)
это не путь, это значение атрибута.
Ответ №1:
Ваш вопрос очень неясен, но я предполагаю, что вы хотите получить href
атрибут ссылки по data-pid
ее предковому <p>
узлу.
Если это так, вам нужно использовать query()
вместо evaluate()
:
$datapin = 123;
$query = "//p[@data-pid='$dataPid']/a[@class='i']/@href";
$url = $xpath->query($query)->item(0)->nodeValue;