php 中此代码的任何快捷方式


<?php
$s1="";$s2="qwe";$s3="zxc";
if(!empty($s1))
{
    $result=$s1;
}
else
{
    if(!empty($s2))
    {
        $result=$s2;
    }
    else
    {
        $result=$s3;
    }
}
echo "$result";
?>

是否有任何可能的代码,可能是 1-2 行,替换上面提到的代码,我记得像使用"or"运算符来做我正在用这段代码做的事情。

$result = $s1 ? $s1 : ($s2 ? $s2 : $s3);

或者更短,如果你有 PHP>5.3:

$result = $s1 ?: ($s2 ?: $s3);

更多:关于三元运算符的PHP手册部分

尝试条件赋值运算符:

$result = !empty($s1) ? $s1 : ( !empty($s2) ? $s2 : $s3 );
$result = $s1 ? $s1 : ($s2 ? $s2 : $s3);

为什么要用这个?

因为它减少了程序的同谋

注意:三元运算符从左到右计算。因此,如果您没有正确分组表达式,您将获得意想不到的结果

使用以下代码:

<?
$s1="";
$s2="qwe";
$s3="zxc";
echo $result = ($s1!="") ? $s1 : ( ($s2!="") ? $s2 : $s3);
?>

输出:QWE

它是三元运算符。如果将 $s 1 设置为不为空,则返回 $s 1,或者再次检查 $s 2 的条件,如果它也为空,则返回 $s 3。

相关内容

最新更新