skillup

技術ブログ

PHP プログラミング全般

emptyの扱いに関して

投稿日:

PHPで空白や存在確認として便利なemptyですが、乱用すると意図しない動きをすることがあるケースが多々あります。

emptyの挙動に関して

基本的には下記のものがtrueになります。

  • 空白
  • null
  • false
  • 0
  • array
  • 未定義

個人的に気をつけたいと思う点。

数値の0

これが一番大きいかなと。

金額0円とか徒歩0分を判定したいときに、未定義やnullと0の判定が正確にできません。この場合、値の存在判定に関してはissetなどを使うべきでしょう。

検索などの全判定と値のなし

検索などで値がない時(is null)と全判定を分けたい時に。

この場合,issetなどで判定し、検索条件の中にnullを入れるべき

PHP isset, empty, is_null の違い早見表

-PHP, プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

気をつけたいトリガー系の処理など

実務でひやっとすることがあり、自分への戒めも込めてメモします。 Contents1 MySQLのcurrent_timestamp on update current_timestamp2 Larav …

no image

コードの見た目について

リーダブルコード4章。コードの見た目について。 自分は結構注意されますね。多いパターンとしては空白の位置などがいい加減だったり、今はありませんが、以前はコードの末尾にスペースを空けてセミコロンをうつ変 …

no image

ファジープロジェクト対策 その1

5月ぐらいから着手していたプロジェクト(顧客管理ソフト)が終焉を迎え、検証段階に入ったので、記して置きたいことなど。 数ヶ月程度ですが、自分が携わったプロジェクトの中では過去最大クラスのものでした。 …

no image

Laravelでのアプリ間のログイン連携

実務でLaravelで複数のアプリを作成し、アプリ同士でログイン連携をさせるという機能が実務であったため、メモします。 例えばhttp://example.comという売上管理のアプリでログイン認証を …

no image

laravel+vessel

現場のリーダー的な方に進められてVesselというDockerのインストールなどをサポートするツールを触ってみました。 特にlaravelのインストールなどに向いていますが、laravelでなくとも使 …