$dyIds = [95,96,97,98]; if (in_array($goods_id , $dyIds)) { echo "11111"; $dy = Db::table('douyin_tuan')->where(['goods_id'=>$goods_id,'user_id'=>$this->user_id])->where('status', 'neq', '2')->find(); if (!$dy){ $this->error('该商品为团购专属,您不符合条件!'); } }
时间: 2023-05-20 21:05:47 浏览: 109
这是一段 PHP 代码,如果 $goods_id 在 $dyIds 数组中,就会输出 "11111",然后会查询数据库中 douyin_tuan 表中符合条件的数据,如果没有找到,会输出 "该商品为团购专属,您不符合条件!"。
相关问题
优化这段代码 $dyIds = array('95','96','97','98'); if (in_array($goods_id,$dyIds)) { echo "11111"; $dy = Db::table('douyin_tuan')->where(['goods_id'=>$goods_id,'user_id'=>$this->user_id])->where('status', 'neq', '2')->find(); if (!$dy){ $this->error('该商品为团购专属,您不符合条件!'); } }
这段代码可以进行如下优化:
$dyIds = ['95', '96', '97', '98'];
if (in_array($goods_id, $dyIds)) {
echo "11111";
$dy = Db::table('douyin_tuan')
->where('goods_id', $goods_id)
->where('user_id', $this->user_id)
->where('status', '<>', '2')
->find();
if (!$dy) {
$this->error('该商品为团购专属,您不符合条件!');
}
}
使用数组字面量代替 array(),使用 <> 代替 neq,使用链式调用代替多个 where() 方法,这样可以使代码更加简洁易读。
阅读全文