PHP/Laravel-如果仅为true,则为短(er)手
PHP7+ 是否可以只使用一个true操作编写一个简写布尔检查 原件:PHP/Laravel-如果仅为true,则为短(er)手,php,laravel,Php,Laravel,PHP7+ 是否可以只使用一个true操作编写一个简写布尔检查 原件: if ($this->debug) Log::debug('batch '. $this->count); 例如: $this->debug ? Log::debug('batch '. $this->count); 是的,这是可能的,您走在正确的道路上,如果您的条件失败,您只需要一个else子句: $this->debug ? Log::debug('batch '. $this->
if ($this->debug) Log::debug('batch '. $this->count);
例如:
$this->debug ? Log::debug('batch '. $this->count);
是的,这是可能的,您走在正确的道路上,如果您的条件失败,您只需要一个else子句:
$this->debug ? Log::debug('batch '. $this->count) : 'else' ;
如果需要分配变量,则使用速记版本,因为它根据条件返回值 在您的情况下,您不需要结果,只需要执行代码 因此,在现实中,没有其他选择
if($this->debug)
日志::调试('batch'.$this->count);
我能问一下为什么吗?!原始的if()
语句清晰明了,速记(IMHO)不清晰且毫无意义(如示例所示)!谢谢-这说明了为什么它不起作用-所以我接受了它作为答案-尽管我会继续使用标准的“如果”语句:)当然,作为@N69S,这里没有必要使用三元运算符。在分配变量时使用它们更方便,因为它更容易阅读。当速记版本实际上比原始代码长时,就会出现问题。