私は検索を行いましたが、これについてはまだ明確な見解がありません。
ローカルの xml.xml に保存されている XML を取得しました
<ITEM NAME='Sample'>
..some other node here
</ITEM >
<ITEM NAME='SamPlE lorem'>
..some other node here
</ITEM >
<ITEM NAME='Sam Ple lorem ipsum'>
..some other node here
</ITEM >
<ITEM NAME='sample'>
..some other node here
</ITEM >
<ITEM NAME='SAMPLE'>
..some other node here
</ITEM >
$xmlfile = 'localhost/project/xml.xml'
$xml = simplexml_load_file($xmlfile);
上記のxmlのすべてのノードにアクセス"sample"
できるように、大文字と小文字の区別と空白を無視してこの文字列を検索する必要があります。これまでのところ、これだけですTRUE
//ITEM is not a parent node thats why I am using this line
//to lead me to certain part of my xml
//that match my contain search
$string = "sample";
$result = $xml->xpath("//ITEM[contains(@NAME, '$string')");
しかし、私はの結果を得ました
<ITEM NAME='sample'>
..some other node here
</ITEM >
また、このHow do i make Xpath search case insensitiveで説明されている翻訳機能も試してみましたが、常にエラーが発生しました。