isNotEmpty 空ではない
コレクションの空をチェックする関数は、isEmpty()、しかし現実では「~が空でないとき」という条件文も良く使います。 もちろん、! で if (! $collection->isEmpty()) とすることでも十分なのですが、なぜか if ($collection->isNotEmpty()) の方が私にはわかりやすい。
コレクションの空をチェックする関数は、isEmpty()、しかし現実では「~が空でないとき」という条件文も良く使います。 もちろん、! で if (! $collection->isEmpty()) とすることでも十分なのですが、なぜか if ($collection->isNotEmpty()) の方が私にはわかりやすい。
2011年6月に最初のVersionがリリースされてから12年。ついにLaravelも大台のVersion 10 を迎える事となりましたね。(パチパチパチ!!)という事でいつも通りinstallしてキャッチアップです。
テスト対象が外部APIにアクセスしている場合、テストの度にAPIにアクセスするためテストに時間がかかる・APIが落ちているとテストも落ちる、といった不便さがあります。そこでモックを使用すると、APIを介すことなく対象のテストを行うことができて便利です。本記事では、Mockeryを使ったモックの作成方法・テストの書き方をご紹介します。
前回の記事にてタイムアウトとなった場合に2種類の例外がスローされる事を説明しました。クエリ実行中にタイムオーバーとなった場合は、QueryException。クエリ実行外でタイムオーバーとなり、その後クエリを実行してエラーとなる場合は、自作したTimeoutExceptionです。今回はこれらのエラーをどうキャッチしてハンドリングするのか解説します。
先日、管理サイトにてアラートが発生しました。調査すると、ある検索画面で利用者が重いクエリを連続で発行した事が原因でした。待ち時間が長かった為、不安になり検索ボタンを連打してしまったようです。サーバに負荷を掛ける操作については注意喚起するとして、待ち時間に制限が無いのはよくありません。そこで、検索処理に制限時間を設ける事にしました。今回はそちらの実装にあたって色々学んだことがあるので紹介します。
factoryを使ったダミーデータ作成方法の3回目です。今回は、複数のデータ作成に便利なsequenceメソッドと、そのユースケースをご紹介します。
factoryを使ったダミーデータ作成方法の2回目です。前回は単一モデルを扱った内容でしたが、今回は「1対多」のリレーションデータを作成します。
プログラムの中のどこからでもカスタムログを作成できるようにしたのは前回の話。今回はそのログを例えば3ヶ月ごとにローテーションしてみます。
プログラムの中で必要なときにちょろっとある情報をログに残したい、しかもlaravel.logではなくカスタム(ここが大事)のログファイルを作成して残したい、というのが私の願いです。さて、どうプログラムするか?
普段、エラーバッグからエラーを取得する際、$errors->first('name')などとしますが、この時裏ではどんな処理が行われているかご存知でしょうか?私自身、全然意識せずに使っていましたが、調べてみると実はdefaultという名前付きエラーバッグからエラーを取得している事が分かりました。