用本地wamp环境做网站总是有个域名后的目录名称,导致删除附件和上线环境不一样,当时用了截取目录名,方法很笨,因为目录名的长度不一样,现在突然发现用替换比较好。优化了一下代码。如果带http则是远程文件,忽略不管。如果不是则判断是不是在域名根目录,不在的话把目录名替换成‘.’,即当前目录。然后判断文件是否存在,最后删除。
$img = M('News')->where('id='.$id)->getField('thumb');
if(stripos($img,'ttp:') == false){
$root = __ROOT__;
if(strlen($root)>1){
$img = str_replace($root,'.',$img);
}
if(file_exists($img)){
unlink($img);
}
}