首页 » 建站手册 » php利用str_replace逐次替换字符串

php利用str_replace逐次替换字符串

谷歌已收录,更新于2018年12月28日; 如遇到问题,请留言及时通知站长; 欢迎加入 三生三世,讨论各种问题!

说明

前段时间搭了哥php解析vip视频网站,里面大量http资源,需要替换到相应的https。一些资源配置类好解决,只要把源码里的http找到可以替代的https资源就好。但是,该解析所有图片都是http的,替换到https就遇到一些坑了。不过,最后解决了。

替换需求

http://p1.qhimg.com/d/dy_b69143672415c1424ec86beecbcc2b88.jpg这个链接替换成https://p1.ssl.qhimg.com/d/dy_b69143672415c1424ec86beecbcc2b88.jpg。而且,p1有时候是p2,也就是qhimg.com存在好几个子域名,大概有p1.phimg.comp2.phimg.com、...、p9.phimg.com。然后,ssl.qhimg.comp1.ssl.qhimg.comp1.ssl.qhimg.com、...、p5.ssl.qhimg.com

替换思路

利用str_replace去掉http链接前的http://,去掉p1p2、...、p9(若是p1,就去掉p1;其他类似)。然后,添加https://,添加p1p2、...、p5(随机添加一个,比如p1).最后,添加.ssl。如此,就可以转换成https形式。

替换过程

//去掉http://
    $v['img'] = str_replace("http://","",$v['img']);
//如果存在p0,就去掉;如果存在p1就去掉;以此类推。
    $v['img'] = str_replace("p0.","",$v['img']);
    $v['img'] = str_replace("p1.","",$v['img']);
    $v['img'] = str_replace("p2.","",$v['img']);
    $v['img'] = str_replace("p3.","",$v['img']);
    $v['img'] = str_replace("p4.","",$v['img']);
    $v['img'] = str_replace("p5.","",$v['img']);
    $v['img'] = str_replace("p6.","",$v['img']);
    $v['img'] = str_replace("p7.","",$v['img']);
    $v['img'] = str_replace("p8.","",$v['img']);
    $v['img'] = str_replace("p9.","",$v['img']);
//随机生成0到5的数字
    $num = rand(0,5);
//链接重新生成
    https://p'.$num.'.ssl.'.$v['img'].'

后续

最后搭建了全站httpsphp解析站,然后发现了个更好的源码,直接就不用这个源码了。不能白白修改源码,所以在这里记录下。顺便说一下,黑冰影视的账号:black1ce.com,密码:yuexia

一个只会魔改主题,而不会制作主题的站长,专业扒各种网站的各种样式。希望每一位来到这里的访客,都能拿到你们需要的资源!

发表评论

已有 7 条评论

  1. 今天被这个字符串的替换函数搞惨了,,不会用,一直替换不成功。。

    1. 枂下 枂下说道:

      例子中,修改了这个变量
      $v['img']

    2. 枂下 枂下说道:

      这玩意就是去掉指定的字符串啊

  2. Quanyin Quanyin说道:

    难怪要用密码才能登陆黑冰影视,::(你懂的)
    我之前搭过,没几天域名就被污染了。。。

    1. 枂下 枂下说道:

      加个密码,保险点,万一呢。

  3. get 了 。技术贴

    1. 枂下 枂下说道:

      嗯,用了很多次这个操作了::(捂嘴笑)

最近动态查看

    利用短代码实现了文章正文任意位置插入[googleads],前端自动变为谷歌广告。这样,文章过长时,可以随意插入广告了。
返回主页看更多
赏杯咖啡给站长 支付宝 扫一扫