div 内のテキストを PHP に置き換えようとしていますが、
18西メインストリート
テキストが19 West Main Street
. だとしたら、別のものに変更されます。私は配列でこれをやろうとしましたが、うまくいきませんでした。
http://php.net/manual/en/function.array-replace.php、ifステートメントでこれを行う方法が見つからず、divタグから変更されたテキストを含めます。
div 内のテキストを PHP に置き換えようとしていますが、
18西メインストリート
テキストが19 West Main Street
. だとしたら、別のものに変更されます。私は配列でこれをやろうとしましたが、うまくいきませんでした。
http://php.net/manual/en/function.array-replace.php、ifステートメントでこれを行う方法が見つからず、divタグから変更されたテキストを含めます。
次のようなものから始める必要があります。
<?php
$html = '<div>19 West Main Street</div><div>18 West Main Street</div>';
$doc = new DOMDocument();
$doc->loadHTML($html);
$xPath = new DOMXPath($doc);
$nodes = $xPath->query("//div[text() = '18 West Main Street']|//div[text() = '19 West Main Street']");
foreach ($nodes as $node) {
if ($node->nodeValue == '18 West Main Street') {
$node->nodeValue = 'Something';
} else {
$node->nodeValue = 'something else';
}
}
echo $doc->saveHTML();
デモ: http://codepad.viper-7.com/V4ZMPT
div
テキストですべての s を検索し19 / 18 West Main Street
、「something (else)」に置き換えます。それがあなたが望むものでない場合、私はあなたの質問を完全には理解していません:)
または、テキストのみを置き換えたい場合は、次のように19 West Main Street
します。
<?php
$html = '<div>19 West Main Street</div>';
$doc = new DOMDocument();
$doc->loadHTML($html);
$xPath = new DOMXPath($doc);
$nodes = $xPath->query("//div[text() = '19 West Main Street']");
foreach ($nodes as $node) {
$node->nodeValue = 'something else';
}
echo $doc->saveHTML();