有办法把 if 判断提出?

if (
      $row['sale_type'] == 'pre' && $row['stock_type'] == '' or
      $row['sale_type'] == '' && $row['delivery_from'] != 0 or
      $row['sale_type'] == '' && $row['delivery_from'] == 0 && $row['stock'] == 0 && $row['stock_type'] == 'pre' ) {      // do something
    }

$row 会变,do something 也会变
但是带入的值都会是一样的,if or 的判断也是长得一样
这样有办法提出来吗?
发现网站有十几个一样的判断,想提出来,方便管理


海绵宝宝撒
浏览 505回答 3
3回答

HUWWW

这样?function checkXxx($row){    return ($row['sale_type'] == 'pre' && $row['stock_type'] == '' or       $row['sale_type'] == '' && $row['delivery_from'] != 0 or       $row['sale_type'] == '' && $row['delivery_from'] == 0 && $row['stock'] == 0 && $row['stock_type'] == 'pre' ) }if(checkXxx($row) === true) {    // do something}

不负相思意

用变量就好了。别搞太花哨,看起来费劲,一个条件一个变量,取个有意义的变量名,if就变短了$isSale1 = xxx; $isSale2 = xxx;if ($isSale1 || $isSale2) { }

慕雪6442864

别想太多 当something很多的时候 还是建议加if 什么数组 什么逻辑且&& 不用那么花哨 如果阅读起来困难 建议还是用if打好注释就行
打开App,查看更多内容
随时随地看视频慕课网APP