демонстрация

ю следующую структуру:

<div class="xGh" style="background-image: url('name_file.jpg');"></div>

Мне нужен этот вывод:

name_file.jpg

Я пытаюсь использовать этоответ, но не работай со мной

$img = $xpath->query(substring-before(substring-after(//div[@class='xGh']/@style, "background-image: url('"), "')"));    

echo $img->item($i)->nodeValue."<br/>";

Посмотри ошибку:

Контрольная работаIdeone с ошибкой

У меня есть ошибка в том синтаксисе, я не вижу, как это правильно ...

сри мой английский

 Andersson01 нояб. 2017 г., 06:51
substring-before(substring-after(//div[@class='xGh']/@style, "background-image: url('"), "')") хорошо работает для меня Что такое сообщение об ошибке?
 MagicHat01 нояб. 2017 г., 12:23
@ Андерссон, вы можете помочь найти эту ошибку или сделали 1 тест с кодом, который работает для вас?ideone.com/NoSAAE
 MagicHat01 нояб. 2017 г., 06:54
хорошо: синтаксическая ошибка, неожиданное «эхо» (T_ECHO) в C: \ xampp \ htdocs \ bd_all \ sp \ sp_c.php в строке 22 >>>echo $img->item($i)->nodeValue."<br/>" ;

Ответы на вопрос(1)

Решение Вопроса

2) с dom xpath запрос возвращает множество узлов, в то время как для получения строкового результата лучше использоватьevaluate

$img = $xpath->evaluate('substring-before(substring-after(//div[@class=\'xGh\']/@style, "background-image: url(\'"), "\')")');    

echo $img; // it contains name_file.jpg

демонстрация

Ваш ответ на вопрос