web-dev-qa-db-ja.com

Laravelビューでnullおよび空の文字列かどうかを確認します

私の見解では、nullempty stringを別々に出力する必要があります

だから私はこれを持っています:

@if( $str->a == null)
... // do somethin
@endif

@if( $str->a == '')
... // do somethin
@endif

問題はそれらが同じ結果であることです。

ありがとう

9
i-faith

コメントで、それがnullであるかどうかだけを確認したいと述べました。したがって、 is_null() を使用します。

@if (is_null($str->a))
    // do somethin
@endif
10
Alexey Mezenin
@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
0
Jim Wright

あなたはこれを試すことができます

@isset($str->a)
    // $str->a is defined and is not null...
@endisset

@empty($str->a)
    // $str->a is "empty"...
@endempty

IfステートメントLaravel docs

0
Hiren Pipariya