• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php if 判断的问题。

php 搞代码 3年前 (2022-01-25) 5次浏览 已收录 0个评论
文章目录[隐藏]

有一段php的判断大家看看有没有更简洁的写法,或者别的方式可以实现

<code>$cat_id = 0;if(empty($a)){    if(empty($b)){        if(empty($c)){            return 0;            exit();        }else{            $cat_id = $c;        }    }else{        $cat_id = $b;    }}else{    $cat_id = $a;}</code>

回复内容:

有一段php的判断大家看看有没有更简洁的写法,或者别的方式可以实现

<code>$cat_id = 0;if(empty($a)){    if(empty($b)){        if(empty($c)){            return 0;            exit();        }else{            $cat_id = $c;        }    }else{        $cat_id = $b;    }}else{    $cat_id = $a;}</code>

<code>$cat_id = $a ?: $b ?: $c ?: 0;//对PHP版本有要求</code>

喜欢这么写,没有嵌套

<code>$cat_id = 0;if($a) {    $cat_id = $a;    return;}if($b) {    $cat_id = $b;    return;}if($c) {    $cat_id = $c;    return;}return;</code>

$cat_id = $a ? $a : ($b ? $b : ($c ? $c : 0));

<code class="php">$cat_id = 0;if (!empty($a)) {    $cat_id = $a;} elseif (!empty($b)) {    $cat_id = $b;} elseif (!empty($c)) {    $cat_id = $c;} else {    return 0;}</code>

@本文来源gaodaimacom搞#代%码@网-搞代gaodaima码

<code>function test($a, $b, $c){    if (empty($a)) {        if (empty($b)) {            if (empty($c)) {                return 0;            }            return $c;        }        return $b;    }    return $a;}$cat_id = test($a, $b, $c);</code>

应该是没有更简单的写法了,但是可以优化成

<code>$cat_id = 0;if (! empty($c)) $cat_id = $c;if (! empty($b)) $cat_id = $b;if (! empty($a)) $cat_id = $a;if (empty($cat_id)) exit;</code>

<code>    function checkEmpty($a, $b = '', $c = ''){        if(empty($b) && empty($c)) exit();        return empty($a) ? checkEmpty($b,$c) : $a;    }</code>

这个应该够简洁了!

<code>$cat_id = 0;while(1){    if(empty($a)){        $cat_id = $a;        break;    }    if(empty($b)){        $cat_id = $b;        break;    }    if(empty($c)){        $cat_id = $c;        break;    }}</code>

不写嵌套就行了

可读性强

以简驭繁


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php if 判断的问题。

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

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