当前位置:Gxlcms > PHP教程 > 求大神写个PHP正则函数自动能识别修改图片CSSJS的路径

求大神写个PHP正则函数自动能识别修改图片CSSJS的路径

时间:2021-07-01 10:21:17 帮助过:5人阅读


style="background-image:url(img/login_08.gif)



等 凡是有以上类型的 以 images img js css 开头的 js 图片css文件
src 或 href = 或 background-image:url() 双引号的 单引号的 无引号的
都能自动加上一个 /template/进去
变成 比如


style="background-image:url(/template/img/login_08.gif)



谢谢

$html = preg_replace('#(images|img|js|css)/#i', 'template/$1/', $html);

在这个基础上改进,这个不能判断是不是 src= href= 还有 有没单双引号


回复讨论(解决方案)

$s =<<< TXT  style="background-image:url(img/login_08.gif)TXT;echo preg_replace('/(href\s*=\s*|url\(|src\s*=\s*)(["\']?)/', '$1$2/template/', $s);

  style="background-image:url(/template/img/login_08.gif)

老大 能再加个限制不

只有 带 images js 或 css 开头的路径 才会插入一个 /template/
变成 /template/images/ 或 /template/js/ 或 /template/css/

而其他的 比如 img/ 开头的 则不变化

根据唠叨前辈的代码修改

$s =' style="background-image:url(img/login_08.gif)';echo preg_replace('/(href\s*=\s*|url\(|src\s*=\s*)(["\']?)(Images|js|css)/', '$1$2/template/$3', $s);


执行

 style="background-image:url(img/login_08.gif)

谢谢两位 完美了!

人气教程排行