在我看来,我必须单独输出null
和empty string
所以我有这个:
@if( $str->a == null)
... // do somethin
@endif
@if( $str->a == '')
... // do somethin
@endif
问题是他们的结果是一样的。
由于
答案 0 :(得分:11)
在您说过的评论中,您只想检查它是否为null
。因此,请使用is_null()
:
@if (is_null($str->a))
// do somethin
@endif
答案 1 :(得分:7)
@if( !empty($str->a))
... // do somethin
@endif
这是空的
以下内容被认为是空的:
"" (an empty string)
0 (0 as an integer)
0.0 (0 as a float)
"0" (0 as a string)
NULL
FALSE
array() (an empty array)
$var; (a variable declared, but without a value)
答案 2 :(得分:0)
$str->a
不能同时为空且''
。你试过@elseif
吗?
@if( is_null($str->a))
... // do somethin
@elseif( $str->a == '')
... // do somethin
@endif
实际上,它应该只显示那些为空的而不是空的那些。
听起来你想检查$str->a
是否是有效的字符串。正如@GrumpyCrouton的评论中所建议的那样,您可以使用empty()。
@if( empty($str->a))
... // do somethin
@endif
答案 3 :(得分:0)
您可以尝试
>> from fractions import Fraction
>> Fraction(1, 2) + Fraction(1, 3)
Fraction(5, 6)