为了账号安全,请及时绑定邮箱和手机立即绑定

移除圖片,如何比對圖片??? unlink

移除圖片,如何比對圖片??? unlink

蛊毒传说 2018-07-05 08:20:58
假設圖片的名稱是12-912-egjaeigaewogkewaogkeawokgaowegh.PNG當我要帶值給 unlink時我要怎麼略過其他值?假設unlink('12-912-egjaeigaewogkewaogkeawokgaowegh.PNG');這樣可以把圖片刪除但是假設我只知道 912 這個數字那這邊我能怎麼只對到 xx-這個地方?-xxxxxxxxunlink('不限-912-不限.不限');只要是完成的912就刪除但是像9122是不刪除的要完全一樣才行!
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

foreach(glob('*-912-*.*') as $file)

{

    unlink($file);

}


查看完整回答
反对 回复 2018-07-11
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

可以用正则去匹配,很简单。

$str = '12-egjaeigaewogkewaogkeawokgaowegh.PNG';

$regexp = '/^(\d+)-(\w+)\.(jpg|png|jpeg)$/i';

preg_match($regexp, $str, $match);

print_r($match);

结果:

Array
(
    [0] => 12-egjaeigaewogkewaogkeawokgaowegh.PNG
    [1] => 12
    [2] => egjaeigaewogkewaogkeawokgaowegh
    [3] => PNG
)

Update 1 2018-07-05 16:18:21
对于匹配删除特定的格式一样可以正则匹配去删除,只需修改下正则就可以了,比如文件名是
12-912-egjaeigaewogkewaogkeawokgaowegh.PNG
把上面的正则改为

'/^(\d+)-912-(\w+)\.(jpg|png|jpeg)$/i'

即可,然后用判断$match是否为空,如果为空说明不匹配,就不删除。

遍历这个目录获取文件列表放到一个数组里,遍历这个数组,按照上面的方法拼接出正则去匹配,如果匹配上了就删除,如果确定只有一个匹配就直接可以break跳出循环了。

查看完整回答
反对 回复 2018-07-11
  • 2 回答
  • 0 关注
  • 108 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信