假設圖片的名稱是12-912-egjaeigaewogkewaogkeawokgaowegh.PNG當我要帶值給 unlink時我要怎麼略過其他值?假設unlink('12-912-egjaeigaewogkewaogkeawokgaowegh.PNG');這樣可以把圖片刪除但是假設我只知道 912 這個數字那這邊我能怎麼只對到 xx-這個地方?-xxxxxxxxunlink('不限-912-不限.不限');只要是完成的912就刪除但是像9122是不刪除的要完全一樣才行!
2 回答
慕运维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跳出循环了。
- 2 回答
- 0 关注
- 138 浏览
添加回答
举报
0/150
提交
取消