(PHP 8 >= 8.4.0)
DOMXPath::quote — XPath 式で使用できるよう、文字列のまわりに引用符を付けます
str
XPath 式に使うことのできる引用符付きの文字列を返します。
例1 引用符を含む属性値の変換
<?php
$doc = new DOMDocument;
$doc->loadXML(<<<XML
<books>
<book name="'quoted' name">Book title</book>
</books>
XML);
$xpath = new DOMXPath($doc);
$query = "//book[@name=" . DOMXPath::quote("'quoted' name") . "]";
echo $query, "\n";
$entries = $xpath->query($query);
foreach ($entries as $entry) {
echo "Found ", $entry->textContent, "\n";
}
?>
上の例の出力は以下となります。
//book[@name="'quoted' name"] Found Book title
引用符が混在している文字列もサポートします:
<?php
echo DOMXPath::quote("'different' \"quote\" styles");
?>
上の例の出力は以下となります。
concat("'different' ",'"quote" styles')