DOMXPath::quote

XPath 式で使用できるよう、文字列のまわりに引用符を付ける

説明

public static string DOMXPath::quote(string $str)

XPath 式で使用できるよう、 str のまわりに引用符を付けます。

パラメータ

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')

参考

  • DOMXPath::evaluate
  • DOMXPath::query