';}ちなみに空と判断されるのは、以下のような値です。collect();逆に空ではないと判断されるのは、以下のような値になります。';}filled()で内容が空ではないかどうかをチェックするblank()の逆バージョンです。ケース文字列camel_case()で「キャメル・ケース」の文字列を取得する先頭が小文字、つなぎ部分が大文字になる「キャメルケース」の文字列を取得します。oneTwoThreekebab_case()で「ケバブ・ケース」の文字列を取得する全て小文字でハイフンを使って文字をつなぐ「ケバブ・ケース」の文字列を取得します。one-two-threesnake_case()で「スネーク・ケース」の文字列を取得する全て小文字でアンダーバーを使って文字をつなぐ「スネーク・ケース」の文字列を取得します。one_two_threestudly_case()で「スタッドリー・ケース」の文字列を取得する大文字で文字列をつなぐ「スタッドリー・ケース」の文字列を取得します。OneTwoThreeタイトル用の文字列を取得するアルファベット単語の先頭を大文字にする関数です。Pen.翻訳テキスト__()で翻訳テキストを取得する例えば、以下のパスにそれぞれ「greeting」というテキスト情報を追加したとします。'やぁ、こんにちは!'];そして、以下のように__()を使うと、自動的にターゲットの言語テキストが表示されるようになります。__('message.greeting');なお、以下のように「:」とキーを使うと可変的にテキストを取得することもできます。'鈴木']);結果はこうなります。やぁ、こんにちは!鈴木さんtrans()で翻訳テキストを取得する__()と同様です。trans_choice()で件数によって翻訳テキストを切り替えて取得する例えば、翻訳データに以下のような「|」で区切られたデータを作成します。'notification|notifications'];そして、以下のようにすると数字が「1」の場合は「notification」、それより大きい場合は「notifications」が選択されます。1);ただし、これは日本語環境では利用できない機能のようです。言語的に複数形が存在しないためでしょう。Str::uuid()でUUIDを取得する詳しくはLaravel5.6の気になる3つの新機能をご覧ください。7c71cfde-de66-471e-8f5c-a20ff7f7a856Str::orderedUuid()でUUIDを取得するUUIDを取得します。パッケージをインストールするなど準備が必要です。詳しくはLaravel5.6の気になる3つの新機能をご覧ください。8b6f86b0-0ad0-46e6-a199-8dde26f2a8f8例外処理abort()でHTTP例外を発生させる例えば、403コードを発生させたい場合です。abort(403);なお、第2引数ではメッセージ、第3引数ではヘッダー情報を指定することができます。'アクセスが拒否されました。'xxxx']);実行結果はこうなります。abort_if()で条件付きで例外を発生させる条件がtrueのときに例外が発生します。403);abort()と同じく第3引数ではメッセージ、第4引数ではヘッダーをそれぞれ指定することができます。'アクセスが拒否されました。'xxxx']);abort_unless()で条件付きで例外を発生させる条件が「false」のときに例外を発生させます。使い方はabort_if()と同じです。\Exception::class);$booleanがtrueの時、例外を発生させることができます。第3引数ではメッセージも指定することができます。'例外が発生しました!');実行結果はこうなります。throw_unless()で条件がfalseの場合に例外を発生させるthrow_if()の逆バージョンです。encrypt('xxxx');ちなみに暗号化する内容は配列でも問題ありません。'value']);暗号化されたデータを元に戻すにはdecrypt()を使います。decrypt()で復号するencrypt()で暗号化されたデータを元に戻すことができます。Illuminate\Foundation\Applicationまた、クラスを指定することもできます。Illuminate\Auth\AuthManager詳しくは、Laravelのよく使うヘルパー関数7選!のauth()をご覧ください。back()で元ページに戻るコントローラー内でreturnすることで元ページへリダイレクトされます。back();また、第2〜4引数にそれぞれHTTPステータスコードヘッダーリダイレクトURLが特定てきない場合の予備URLを指定することができます。'auth/login');bcrypt()でハッシュ値を取得するこのHash値は、パスワードなどに利用されます。Ordered());cache()でキャッシュを操作するcache()は読み込みと書き込み2つの機能をもっています。5);第1引数は連想配列で保存したいキーと値を指定し、第2引数ではキャッシュを保存する時間(分)、もしくはCarbonインスタンスでもOKです。$dt);なお、永遠にキャッシュさせたい場合はforever()を使うといいでしょう。cache('your-key');第1引数にキーを指定するだけでキャッシュされたデータを取得することができます。データが存在しない場合のためのデフォルト値を第2引数に指定することもできます。'デフォルト値');class_uses_recursive()で利用されているtraitを取得する例えば、「\App\User」クラスが使っている全トレイトを取得する場合です。class_uses_recursive(\App\User::class);print_r($traits);trait_uses_recursive()で利用されているtraitを取得するclass_uses_recursive()と似ていますが、こちらは引数にクラスではなくトレイトを指定します。5.6のコレクション実例を参照してください。config('app.name');指定するキーの先頭はconfigファイル名でその後はドットつなぎで配列の下層を指定することができます。上の例で言うと「app.php内のnameというキーの値を取得する」となります。キーが存在しないときのためにデフォルト値を指定することもできます。'デフォルト値');なお、第1引数を連想配列にすることで設定情報を入れ替えることもできます。'新しいサイト名']);ただし、元の設定ファイルが書き換えられるわけではないので、混乱をさけるため極力この記述は使わず、きちんと設定ファイルを変更すべきです。5);第1引数はキー、第2引数が値、第3引数は継続時間(分)です。クッキーの読み込みと書き込みは以下のように行います。クッキーの書き込み読み込みにはRequestを使います。$request->cookie('your-key');}もしくはヘルパー関数を使って、以下のようにすることもできます。request()->cookie('your-key');クッキーの書き込み書き込みはレスポンスとともに行います。5);つまり、リダイレクトなどでも同様にクッキーを作成することができます。5);session()でセッションを管理するsession()は2つの役割を持っています。'xxx']);第1引数に連想配列を指定するとセッション・データを書き込むことができます。session('your-key');第1引数にキーを指定した場合はセッション・データを読み込むことができます。セッション・インスタンスを取得するもし引数が空の場合はセッション・インスタンスが返されます。そのため、get()やput()などをアローでつなげて利用することも可能です。csrf_field();これを実行すると以下のようなランダムな文字列を含んだインプットタグが取得できます。Bladeテンプレートの中で使うことになるでしょう。csrf_token();csrf_field()の場合はインプットタグまで作成しますが、こちらはその中身だけを取得するヘルパー関数です。Ajaxなどでトークンが必要になる場合に重宝するでしょう。productionなど※注意ただし、artisanコマンドの「config:cache」を使ってしまうと「.env」が読み込めず内容がnullになってしまう可能性があります。method_field('PUT');これを実行すると以下のようなタグが取得できます。Bladeテンプレートのフォーム内で使うことになるでしょう。$now->toDateTimeString();これを実行すると以下のようになります。20:34:14today()で今日のCarbonインスタンスを取得するnow()と同じくCarbonインスタンスを取得しますが、こちらは今日がはじまる時間を取得します。「今日の日付」+「00時00分00秒」のCarbonインスタンスです。00:00:00old()で入力済みのデータを取得する例えば、入力フォームに名前を入力し、バリデーションで失敗した場合にすでに入力されたデータを取得する場合です。'デフォルト値');詳しくは、Laravelリダイレクト実例・全5パターンの「直前のページへ戻るリダイレクト」を参考にしてください。optional()でエラーを発生させないコードにする例えば、存在しないユーザーデータを取得してその名前を表示する以下のようなコードを見てみましょう。これはエラーになります。$user->name;これは実際にはエラーが表示されることになります。optional()を使えばこのエラー発生をさせないようにすることが可能です。optional($user)->name;この場合、実際のデータはnullが返ることになります。policy()でPolicyインスタンスを取得するpolicy(\App\User::class);redirect()でリダイレクトする詳しくは、Laravelリダイレクト実例・全5パターンをご覧ください。request()でフォーム・リクエストを取得する引数を空にすると「Illuminate\Http\Request」のインスタンスが返ってきます。$request->user();また、フォーム・パラメータを取得する場合は第1引数でキーを指定します。request('your-key');なお、第2引数にはデフォルト値を指定することもできます。\App\Userresponse()でレスポンス・インスタンスを取得する詳しくは、Laravelのよく使うヘルパー関数7選!のresponse()をご覧ください。retry()で指定回数の処理を繰り返すretry()はPHPのtryを何回か繰り返す関数です。HTTPアクセスが失敗する可能性があるスクレイピングをする場合などに利用するといいでしょう。100);この例は「ダメなら100ミリ秒間隔で5回までfunction()を実行する」例です。ちなみにfunction()内でreturnした値を受け取ることもできます。何かを実行});これを実行すると「鈴木」と表示されます。いった使用法を想定しているのか疑問ですが、おそらくコードを少なくするためのものだろうと推測しています。注意が必要なのは無名関数の中でreturnしても返り値には反映されないということです。.'さん';});この例では「鈴木さん」が返って来そうですが、実際には先ほどと同じく「鈴木」しか返ってきません。transform()でデータを加工する例えば、「鈴木」という文字列に「さん」をつける場合です。.'さん';});これを実行すると「すずきさん」となります。第3引数にはデフォルト値を指定することができ、もし第1引数が空白である場合はこのデフォルト値が適用されることになります。value('鈴木');value()の引数に通常の値を指定するとそのままの値が返されてきます。(あまり意味があるようには思えません)なお、function()を使って値を返すこともできます。これを使えば、例えば「日曜日だけは鈴木さんの担当」のような使い方ができます。'佐藤';});もしfunction()内の引数を指定したい場合はwith()を使いましょう。view()でビューを取得するコントローラー内でview()を返すことでページ表示をさせることができます。view('auth.login');with()で値を取得するvalue()と似ていますが、こちらは引数も同時に指定することができます。'山本'];dd($names);これを実行すると以下のようになります。ちなみにdd()を使うと処理が強制的に終了されます。最後までコードを実行したい場合はdump()を使いましょう。dump()で変数の中身をチェックするdd()と同じですが、こちらは処理が途中で止まることはなく、最後までコードが実行されます。以下の「test」は表示されることになります。'test';info()でデータをログに書き込むinfo('このテキストはログに書き込まれます');これを実行すると以下のような内容がログに書き込まれることになります。dd()などでデータ表示しにくい場合やcronの調整などで利用するといいでしょう。このテキストはログに書き込まれますまた、その他のデータも書き込みたい場合は第2引数にセットします。'value_3',]);実行結果はこうなります。{"key_1":"value_1","key_2":"value_2","key_3":"value_3"}logger()でデバッグ用ログを書き込むほぼinfo()と同じ内容ですが、書き込まれる内容が以下のように少しだけ違っています。デバッグレベルのログを書き込みますまた、エラー用のログを書き込む場合は以下のようにerror()をアローでつなげます。logger()->error('これはエラー用ログです。これはエラー用ログです。report()で例外情報を報告する「app/Exceptions/Handler.php」のreportメソッドを実行するヘルパー関数です。カスタマイズは可能ですが、初期状態で以下のようにすると、「storage/logs/laravel.log」に例外情報を書き込むことができます。report($e);}rescue()で例外処理を報告するこれもreport()と同様で「app/Exceptions/Handler.php」のreport()メソッドを実行する関数ですが、例外が発生する(かもしれない)コードはfunction()の中に書きます。xxx()というメソッドが存在しないのに実行しようとした場合です。存在しないので例外が発生する});なお、rescue()で重要な点は「例外が発生しても処理が終わらない」という点です。第2引数には例外が発生した場合に返す値を指定することができます。false);この場合、返り値「$result」のパターンは以下のようになります。nullなお、第2引数はfunction()にすることも可能です。false;});おわりに今回も少し長い記事になってしまいましたが、私個人もいい学び直しができました。「optional()」は今回始めて知ったのですが、この関数はとても便利だと気づくことができました。ユーザーデータが存在していない場合はなど、今まではIF文でis_null()などとして、ユーザー情報の存在チェックをしてから使うようにしてましたが、IF文は可読性を考慮して数行使ってしまうため、もっとショート・コードにできないものかと考えてました。optional()を使えばよりシンプルなコードが書けそうです。・・・ということで今回はLaravelのもつ便利なヘルパー関数の全実例をお届けしました。みなさんの開発業務がより効率化されると嬉しいです。開発スキルプログラム開発は15年以上。Laravel、Vue.jsをメインとしてPython(機械学習)やElectronの開発もお引き受けしております。過去2度カナダのバンクーバーに滞在していました。開発状況によりましては開発をお待ちいただく可能性がございますが、いつでもご相談は受けさせていただいております。お気軽にご連絡ください!お問い合わせフォーム開発してほしい機能を募集中!MITライセンスで公開します。詳しくはこちらの記事をご覧ください。ぷれりり・プレスリリース掲載無料のプレスリリース・スタンド!播磨孤道(はりまこどう)兵庫周辺のゆったり自転車一人旅の記事を書いていきます。