php - MySQL ifnull 相当于 php

标签 php

我的场景:

$exTime = get_cfg_var("session.gc_maxlifetime")?get_cfg_var("session.gc_maxlifetime"):1440;

我希望它像 mysql:

$exTime = isnull(get_cfg_var("session.gc_maxlifetime"),1440);

或类似的东西也可以理想地测试 FALSE。这样我只需调用一次该函数!

我知道我可以将它分配给一个 var,但这会在我的代码中添加另一行(哦,不!)。这真的是一种装饰性的东西,我认为它更容易阅读。无论如何谷歌没有帮助我(inb4 有人证明我错了)。谢谢!

最佳答案

从 PHP 5.3 开始,您还可以使用 short ternary operator :

$exTime = get_cfg_var("session.gc_maxlifetime") ?: 1440;

这基本上是您预期的功能,但无需声明该功能。在 5.3 之前的 PHP 版本中,您应该采用 André 的回答。

不过请记住,如果要检查未指定键的数组,调用该函数可能会引发警告:

$array = array(
    0 => array(
        0 => 100
    )
);

$example = isNull($array[0][1], 200);

关于php - MySQL ifnull 相当于 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1402327/

相关文章:

php - 索引 mysql 之后脚本不工作

php - PHP 有自动激活吗?

javascript - 动态字段上的自动完成 - 显示来自 mysql 对输入数据的用户建议

php - 我是否正确使用 mysqli_real_escape_string?

php - Medoo SQL IN 或类似功能

php - Angular 2 + Angular cli + Laravel 5.3

php - MySQL查询LIKE出错

php - 无法在 codeigniter 应用程序中将超过 6 种产品添加到购物车

php - 想要通过合并两个查询在一个查询中获得两个查询的结果