PHP速记语法
我刚在GitHub上遇到过PHP速记语法,php,syntax,kohana-3,Php,Syntax,Kohana 3,我刚在GitHub上遇到过 ($config === NULL) and $config = Kohana::config('email'); 这等于 if ($config === NULL) { $config = Kohana::config('email'); } 这很平常吗?如果我使用第一种方式立即知道代码在做什么,我会期望其他开发人员查看我的代码吗?是一个PHP逻辑运算符 ($config === NULL) and $config = Kohana::config('
($config === NULL) and $config = Kohana::config('email');
这等于
if ($config === NULL) {
$config = Kohana::config('email');
}
这很平常吗?如果我使用第一种方式立即知道代码在做什么,我会期望其他开发人员查看我的代码吗?是一个PHP逻辑运算符
($config === NULL) and $config = Kohana::config('email');
具有相同的结果,但具有较小的
就个人而言,为了避免任何混淆,我将使用您的第二种方法。是一个PHP逻辑运算符
($config === NULL) and $config = Kohana::config('email');
具有相同的结果,但具有较小的
就我个人而言,为了避免任何混淆,我会使用您的第二种方法。我花了一秒钟才得到它,但这实际上应该适用于几乎所有编程语言。由于and或or运算符是惰性计算的,因此如果左侧的语句为false,则无需计算其余语句,因为整个表达式将始终为false,true为false。同样,你也可以用or来做,但是左边的语句必须是true,那么右边的语句就不会被计算
PS:在这种情况下,右边的不是布尔表达式并不重要;它的真值为$config,我花了一秒钟才得到它,但这实际上应该适用于几乎所有的编程语言。由于and或or运算符是惰性计算的,因此如果左侧的语句为false,则无需计算其余语句,因为整个表达式将始终为false,true为false。同样,你也可以用or来做,但是左边的语句必须是true,那么右边的语句就不会被计算
PS:在这种情况下,右边的不是布尔表达式并不重要;它将采用$config的真值谢谢,这个解释帮助我理解得最好。谢谢,这个解释帮助我理解得最好。