I'm Sham
一个在通往码农道路上走走停停的行政文员

PHP笔记-通过拼接来实现判断简单化

因为Sham写小程序时,需要在小程序端通过选择查询来从后端获取数据,由于有1个不同变量,想要通过1个mysql语句来实现,按以前,可能要写很多行if,else,今天Sham发现可以通过判断后拼接成数组,然后再转变成字符串来便捷实现,特此记录备忘。

以下面的为例,因为mysql查询时,多条件需要用过and连接,但是在无法判断是否有某个条件的时候,就得判断要不要加and了,这里是通过先往数组中push,然后再implode()来转变成用and连接的字符串,如果没有该条件时,也就不用加and了

    $sql = "SELECT * FROM `mealorder`";
    $sqls = [];
    if($_POST['userid'] != '全部'){
      array_push($sqls, "`userid` = '".$_POST['userid']."'");
    }
    if($_POST['mealstatus'] != '全部'){
      array_push($sqls, "`status` = '".$_POST['mealstatus']."'");
    }
    if($_POST['mealtype'] != '全部'){
      array_push($sqls,"`mealtype` = '".$_POST['mealtype']."'");
    }
    if($_POST['mealdate'] != '全部'){
      array_push($sqls," `mealdate` = '".$_POST['mealdate']."'");
    }
    if(count($sqls)>0){
      $sql .= 'where'.implode(' and ', $sqls);
    }
    $sql .= " order by `mealdate`,`id` DESC";
赞(0) 赏杯咖啡!
未经允许不得转载:Sham@双目瞿 » PHP笔记-通过拼接来实现判断简单化

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

如果你觉得文章好,请赏1杯速溶咖啡给Sham吧!

微信扫一扫打赏