建站技术网专注分享网站建设技术,网站建设教程,真正帮你学会做网站技术,轻松解决网站建设过程中遇到的常见问题,为广大站长服务。 网站地图 | 收藏本站 | 订阅
域名投资,就来找米网,认准网址:www.zhaomi.cc 专业仿站,就到仿站网:www.fangzhan.org
  站内公告: ·帝国cms教程内容已更新,欢迎关注     ·建站技术网采用阿里云服务器,备案已通    
您当前的位置:建站技术网 > cms教程 > 帝国cms教程

帝国cms用正则替换在输出的图片路径前加前缀或后缀的方法(php)

时间:2019-05-12 11:13:02  来源:网络收集  整理: 建站技术网 www.jzjsw.com     点击:0次

有时我们会有这样的需求,在图片路径中的图片名称前边加一个前缀,例如想实现下面的效果:

折叠XML/HTML 代码
  1. 原路径 /pc/2017/04/04/6a79757ce58fd5587b49d924c2e8f815.gif  
  2. 新路径 /pc/2017/04/04/aaa_6a79757ce58fd5587b49d924c2e8f815.gif  

这时我们可以借助正则来完成。

编写一个函数,首先正则取出图片名称,然后在图片名称前加前缀符号。

函数如下,帝国cms可以将函数放在userfun.php文件中:

折叠PHP 代码
  1. function Reimgname($data,$qz){  
  2.     preg_match("/([A-Za-z0-9]+)+.(jpg|gif|bmp|bnp|png)$/",$data,$arr);  
  3.     $oldname=$arr[0];  
  4.     $newname=$qz.'_'.$arr[0];  
  5.     $url=str_replace($oldname,$newname,$data);  
  6.     return $url;  
  7. }  

接着在模板中调用这个函数,方式如下,第一个参数为图片路径,第二个参数为增加的前缀:

折叠PHP 代码
  1. <?=Reimgname('/pc/2017/04/04/08/6a79757ce58fd5587b49d924c2e8f815.gif','88888');?>  

如果是在内容页调用titlepic标题图片字段,就这样用:

折叠PHP 代码
  1. <?=Reimgname($navinfor['titlepic'],'88888');?>  

当然这个函数并不限于帝国cms使用,其他php程序也是可以用的。

上面的正则只适用于英文和数字命名的图片,如果图片中含有中文怎么办呢?我们可以用下面的格式

折叠PHP 代码
  1. preg_match("/([^//])+.(jpg|gif|bmp|bnp|png)$/",$data,$arr);  

 

标签:
文章标题:帝国cms用正则替换在输出的图片路径前加前缀或后缀的方法(php)
文章网址:http://www.jzjsw.com/cmsJiaocheng/diguocms/11435.html
上一篇:帝国cms开通qq互联和微博开放平台登陆功能的步骤
下一篇:帝国cms在大数据量下将gbk(gb2312)版本转码为utf8方法的流程和一些问题
来顶一下
返回首页
返回首页
相关文章
    无相关信息
推荐资讯
如何通过SEO优化排名赚钱?SEO赚钱方法
如何通过SEO优化排名赚
seo优化教程:网站seo内容优化
seo优化教程:网站seo
SEO细节:企业SEO如何快速为新站做出效果
SEO细节:企业SEO如何
电商技术将如何发展?2018年有这五个大胆预测
电商技术将如何发展?
最新文章
栏目更新
栏目热门