PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-如何使用preg_replace将表格宽度更改为100%大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我想将表格宽度更改为100%(如果宽度值以像素为单位).

我的意思是,如果表格宽度看起来像width =“ 500”或width =“ 500px”,那么我想用100%替换它.

我的意思是像这个width =“ 100%”.

有人可以帮我preg_replace吗?

$content = 'holds all my html content';
$replace = '100%';
preg_replace($pattern,$replace,$content,-1);

有人可以通过$pattern帮助我吗?

解决方法:

我建议不要使用preg_replace,并举例说明使用DOM

$dom = new DOMDocument();
$dom->loadHTML($content);

foreach ($dom->getElementsByTagName('table') as $item) {
    if(strpos($item->getAttribute('width'), '%') === false) {
        $item->setAttribute('width', '100%');
    }
}
$content = $dom->saveHTML();

如果要替换所有表的宽度为100%,请删除if子句.当前,它会检查以确保宽度不是基于百分比的.

编辑

万一您不想使用格式正确的HTML,可以通过更改以下内容获取没有body标签的body内容

$content = $dom->saveHTML();

至:

$content = substr($dom->saveXml($body->item(0)), 6, -7);

所以如果你有

$content = '<table width="600px"><td>Stuff</td></table><table width="50%"><td>Stuff</td></table>';

您最终将得到:

<table width="100%"><td>Stuff</td></table><table width="50%"><td>Stuff</td></table>

大佬总结

以上是大佬教程为你收集整理的php-如何使用preg_replace将表格宽度更改为100%全部内容,希望文章能够帮你解决php-如何使用preg_replace将表格宽度更改为100%所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: