Php 如何在通过正则表达式添加的图像中添加图像尺寸

Php 如何在通过正则表达式添加的图像中添加图像尺寸,php,html,regex,wordpress,Php,Html,Regex,Wordpress,下面是一段来自WordPress插件的PHP代码,该插件使用preg_replace将图像添加到内容中。问题是添加的图像没有指定维度,并且由于在每个页面上多次添加此图像,因此会降低页面渲染速度(在很小的程度上)。现在的问题是: 如何通过下面提到的PHP正则表达式将width=“1”和height=“1”添加到图像的最终HTML中? // In case you want to change the placeholder image $placeholder_image = a

下面是一段来自WordPress插件的PHP代码,该插件使用preg_replace将图像添加到内容中。问题是添加的图像没有指定维度,并且由于在每个页面上多次添加此图像,因此会降低页面渲染速度(在很小的程度上)。现在的问题是:

如何通过下面提到的PHP正则表达式将width=“1”和height=“1”添加到图像的最终HTML中?

 // In case you want to change the placeholder image
        $placeholder_image = apply_filters( 'lazyload_images_placeholder_image', self::get_url( 'images/1x1.trans.gif' ) );


    // This is a pretty simple regex, but it works
        $content = preg_replace( '#<img([^>]+?)src=[\'"]?([^\'"\s>]+)[\'"]?([^>]*)>#', sprintf( '<img${1}src="%s" data-lazy-src="${2}"${3}><noscript><img${1}src="${2}"${3}></noscript>', $placeholder_image ), $content );
        return $content;
//如果要更改占位符图像
$placeholder_image=apply_过滤器('lazyload_images_placeholder_image',self::get_url('images/1x1.trans.gif');
//这是一个非常简单的正则表达式,但它可以工作
$content=preg\u replace('.']+)[\''”]?([^>]*)>\'',sprintf(''.$placeholder\u image),$content);
返回$content;

非常感谢您的帮助!

如果他们都没有设置尺寸,您只需将
width=“1”height=“1”
添加到img标签即可

像这样:

$content = preg_replace( '#<img([^>]+?)src=[\'"]?([^\'"\s>]+)[\'"]?([^>]*?)(\/)?>#', sprintf( '<img${1}src="%s" data-lazy-src="${2}"${3} width="1" height="1" /><noscript><img${1}src="${2}"${3}></noscript>', $placeholder_image ), $content );
$content=preg\u replace('\\']+)[\'']?([^>]*?)(\/)?>\'、sprintf('''.$placeholder\u image),$content);

如果在
标记的末尾添加,即使原始图像已经设置了它,它也不会干扰。

虽然它添加了高度和宽度属性,但我在W3C验证程序上发现了这些错误:斜杠后面没有紧跟>…t=“关于哈利波特的有趣事实”/width=“1”height=“1”>。。。。。。重复属性宽度…t=“关于哈利波特的有趣事实”/width=“1”height=“1”>。。。。。。重复属性高度…t=“关于哈利波特的有趣事实”/width=“1”height=“1”>我修改了代码,以处理这个斜杠。应该行得通。它仍然行不通,因为我现在遇到了这个错误:斜杠后面没有紧接着“>…”关于哈利波特的有趣事实“/width=“1”height=“1”/>。。。。。重复属性宽度…“关于哈利波特的有趣事实”/width=“1”height=“1”/>。。。。。。。。。。重复属性高度…“关于哈利波特的有趣事实”/width=“1”height=“1”/>对不起,周末我没有时间测试它。另一个编辑,现在已测试:)