PHP strcmp问题

weixin_41240366 2020-03-08 01:06:38
$a = $_POST['aa'];
$b = $row['bb'];
$c = $_POST['cc'];
$d = $row['dd'];
$e = $_POST['ee'];
$f = $row['ff'];
if(strcmp($a,$b)!==0){
$file_delete = $b;
$res = unlink($file_delete);
}


如何在以上strcmp加入$c与$d,$e与$f,比较,然后$file_delete = $b;或$d或$f
...全文
208 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
于小九 2020-03-10
  • 打赏
  • 举报
回复
$b,$d,$f等信息都是从数据库中取出来的图片地址值且没有对文件地址做其他处理的话可以直接 unlink 函数删除这个文件后在把新传入的文本域修改到数据库与上传新文件这样来操作会相对于你这样做一次对比再操作效率会比较高一点。
zhouyong80 2020-03-09
  • 打赏
  • 举报
回复
我认为没有必要去做比较,你就认为每次上传的都是新的,用新上传的路径更新数据库中的图片地址,更新前将旧的图片删除不就行了吗?
weixin_41240366 2020-03-09
  • 打赏
  • 举报
回复
引用 1 楼 zhouyong80 的回复:
使用if嵌套?你想实现什么?

$a = $_POST['aa'];   //图片上传提交时文本域aa值
$b = $row['bb'];      //数据库中记录的图片地址值
$c = $_POST['cc'];   //图片上传提交时文本域bb值
$d = $row['dd'];      //数据库中记录的图片地址值
$e = $_POST['ee'];   //图片上传提交时文本域ee值
$f = $row['ff'];         //数据库中记录的图片地址值
if(strcmp($a,$b)!==0){
    $file_delete = $b;
   $res = unlink($file_delete);   
}
上传图片命名是按时间,比如前几天上传的图片,文件名为20200301.jpg,今天更新了,新上传的图片文件名为20200309.jpg,在提交时新文件名与原文名比较不一致时,删除原20200301.jpg文件,否则未做新上传相等不作删除,因我产品页面有多个产品图,所以就要做多个比较。以上代码怎么改,麻烦指导一下,感谢,或者说有没更好的方法? 也就是说做了更新动作,原图片自然就用不上了,就要把他给删除以免产生垃圾文件
zhouyong80 2020-03-09
  • 打赏
  • 举报
回复
使用if嵌套?你想实现什么?

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧