私の見解では、null
とempty string
を別々に出力する必要があります
だから私はこれを持っています:
@if( $str->a == null)
... // do somethin
@endif
@if( $str->a == '')
... // do somethin
@endif
問題はそれらが同じ結果であることです。
ありがとう
コメントで、それがnull
であるかどうかだけを確認したいと述べました。したがって、 is_null()
を使用します。
@if (is_null($str->a))
// do somethin
@endif
@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)
$str->a
をnullにすることはできません。''
同時に。やってみました @elseif
?
@if( is_null($str->a))
... // do somethin
@elseif( $str->a == '')
... // do somethin
@endif
実際には、nullのものだけが表示され、空のものは表示されません。
$str->a
は有効な文字列かどうか。 @GrumpyCroutonのコメントで提案されているように、 empty() を使用できます。
@if( empty($str->a))
... // do somethin
@endif
あなたはこれを試すことができます
@isset($str->a)
// $str->a is defined and is not null...
@endisset
@empty($str->a)
// $str->a is "empty"...
@endempty