以下のようなDOM操作の流れで、class名が"foo"の<img>だけ、DOM操作でremoveするにはどういうコードになりますか?
<?php
mb_internal_encoding('UTF-8');
$sour =<<< EOT
texttexttexttexttext<img src="aaa.png" class="hoge" /><img src="bbb.png" class="foo" />texttexttexttexttext
EOT;
//XMLにする
$sour = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n<div>" . $sour . "</div>";
$doc = new DOMDocument();
$doc->loadXML($sour);
echo $doc->saveXML($doc);
?>
http://blog.livedoor.jp/osadasoft/archives/51081997.html
あたりを参考にして。
$doc->loadXML($sour);
echo $doc->saveXML($doc);
の間に
$imgs=$doc->getElementsByTagName('img');
for($i=0;$i<$imgs->length;$i++){
$class=$imgs->item($i)->getAttribute('class');
if($class=='foo'){
$imgs->item($i)->parentNode->removeChild($imgs->item($i));
}
}
↑
を追加。で、できましたよ。
できました!
ありがとうございます。