我从某些api获取iframe,并且我在某些var中持有这个iframe。
我想搜索" 身高"并将他的价值改变为别的东西。与" 滚动"。
相同例如:
<iframe src="someurl.com" width="540" height="450" scrolling="yes" style="border: none;"></iframe>
在php函数之后,iframe将是:
我们已经改变了#34;身高&#34;到600px和&#34;滚动&#34;没有
<iframe src="someurl.com" width="540" height="600" scrolling="no" style="border: none;"></iframe>
我有这个代码的解决方案:
$iframe = preg_replace('/(<*[^>]*height=)"[^>]+"([^>]*>)/', '\1"600"\2', $iframe);
问题是&#34; preg_replace&#34;运行它删除&#34; height&#34;
之后的所有html属性由于
答案 0 :(得分:2)
您可以使用DOMDocument。像这样:
function changeIframe($html) {
$dom = new DOMDocument;
$dom->loadHTML($html);
$iframes = $dom->getElementsByTagName('iframe');
if (isset($iframes[0])) {
$iframes[0]->setAttribute('height', '600');
$iframes[0]->setAttribute('scrolling', 'no');
return $dom->saveHTML($iframes[0]);
} else {
return false;
}
}
$html = '<iframe src="someurl.com" width="540" height="450" scrolling="yes" style="border: none;"></iframe>';
echo changeIframe($html);
使用此方法,您可以根据需要修改iframe。
感谢。