2013-11-11 2 views
0

я следующий XMLКак искать строку с цитатой апострофа с XPATH в XML?

$xml = <<<XML 
<books> 
<book> 
    <title>PHP Basic's</title> 
    <author>Jim Smith</author> 
    <author>Jane Smith</author> 
</book> 
<book> 
    <title>PHP Secrets</title> 
    <author>Jenny Smythe</author> 
</book> 
<book> 
    <title>XML basics</title> 
    <author>Joe Black</author> 
</book> 
</books> 
XML; 

И следующий PHP код

$xml = simplexml_load_string($xml); 
$books = $xml->xpath("//book[contains(title,'Basic's')]"); 

Вопрос: Как искать строку с апострофа цитатой? Я попытался с либо как пытался процитировать все выражение XPATH в одинарные (') и двойные (") цитаты, но не может быть в состоянии создать правильное выражение XPATH. Может кто-нибудь помочь мне?

ответ

1

Вы можете переключить ' с " и избежать апостроф в Basic's:

$books = $xml->xpath('//book[contains(title,"Basic\'s")]'); 

Codepad Example

+0

Спасибо так много, а также недурно для быстрого рабочего примера :) – NullPointer

Смежные вопросы