PHPを介してhtml要素を操作するためのソリューションを探しています。http://www.php.net/manual/en/book.dom.phpを読んで いましたが、遠くまで行きませんでした。
「iframe」要素(ビデオ埋め込みコード)を取得し、エコーする前に変更しようとしています。「src」属性にいくつかのパラメーターを追加したいと思います。
https://stackoverflow.com/a/2386291からの回答に基づいて、 要素の属性を反復処理できます。
$doc = new DOMDocument();
// $frame_array holds <iframe> tag as a string
$doc->loadHTML($frame_array['frame-1']);
$frame= $doc->getElementsByTagName('iframe')->item(0);
if ($frame->hasAttributes()) {
foreach ($frame->attributes as $attr) {
$name = $attr->nodeName;
$value = $attr->nodeValue;
echo "Attribute '$name' :: '$value'<br />";
}
}
私の質問は次のとおりです。
- 要素のすべての属性を繰り返し処理し、現在の要素が探しているものであるかどうかを確認することなく、属性値を取得するにはどうすればよいですか?
- 要素に属性値を設定するにはどうすればよいですか?
- 将来の証明にしたいので、これには正規表現を使用しないことを好みます。「iframe」タグが適切にフォーマットされている場合、これに問題はありますか?
iframe の例:
<iframe src="http://player.vimeo.com/video/68567588?color=c9ff23" width="486"
height="273" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen>
</iframe>