在PHP中,三元和If语句之间的执行逻辑区别是什么?

时间:2015-12-01 23:01:38

标签: php conditional

我不知道我错过了什么!我有以下代码

//does not work
$arg = (isset($_REQUEST['TEST']))? $_REQUEST['TEST'] : $_REQUEST['test'];

// While this works
if(isset($_REQUEST['TEST'])){ $arg = $_REQUEST['TEST']; }
if(isset($_REQUEST['test'])){ $arg = $_REQUEST['test']; }

每条条件处理上述代码的方式有区别吗?它对我来说也一样!任何解释?

P.S

应该没有区别!是否存在可能影响此问题的全局PHP设置?

1 个答案:

答案 0 :(得分:1)

我认为两者之间没有任何功能差异

Customer

你确定$ _REQUEST ['test']存在且有价值吗?因为在你的第二个陈述中

$arg = (isset($_REQUEST['TEST']))? $_REQUEST['TEST'] : $_REQUEST['test'];

你明确地检查了它的值,但是在第一个声明中你没有。