更好的写作方式

时间:2011-06-04 14:07:25

标签: php coding-style

if (isset($row['product_limit'])){
    if ($row['product_limit'] != 0){
        echo $row['product_limit'];
    } else {
        echo $text_infinite;    
    }
} else {
    echo $text_infinite;
}

有没有更好的方法来写这个???

修改

虽然我使用了@Radu代码,但这里是我使用的版本

echo (isset($row['product_limit']) 
&& $row['product_limit'] != 0) ? $row['product_limit'] : 'unlimited' ;

不期望这么多方法:)全部谢谢

4 个答案:

答案 0 :(得分:14)

这个怎么样?

echo empty($row['product_limit']) ? $text_infinite : $row['product_limit'];

查看empty()the ternary conditional operator的文档。

答案 1 :(得分:2)

if (isset($row['product_limit']) && $row['product_limit'] != 0){
     echo $row['product_limit'];
} else {
    echo $text_infinite;    
}

答案 2 :(得分:1)

也许你可以尝试一些EXME方法。

    if (isset($row['product_limit']))
    {
        $msg = $row['product_limit'];
    }
    else
    {
        $msg = "";
    }

然后你只需要通过调用$ msg变量的echo来输出其他地方的代码。

答案 3 :(得分:0)

if (!empty($row['product_limit'])){
    echo $row['product_limit'];
} else {
    echo $text_infinite;    
}

正如php.net所说,以下内容被认为是空的:

  • “”(空字符串)

  • 0 (0为整数)

依旧......