grasys blog

Laravel の小ネタ

はじめまして、grasys 諏訪です。

最近、よく触っているLaravel についてTips的なものを紹介していきます。

今回のお話で扱うLaravelのバージョンは5.6です。

ルーティンググループの名前

ルーティングの設定で、各ルートに名前をつけられますがグループに対しても名前をつけられます。

Route::name('グループの名前')->group(function () {
});

また、グループは入れ子にして階層構造にできます。

設定例1

// グループ A
Route::name('a')->group(function () {
    // グループ B
    Route::name('b')->group(function ()
        // ルート
        Route::get('/', 'Controller@index')->name('c');
        });
    });
});

こんな感じで設定できます。
せっかく名前をつけたので、現在リクエストされているルートの名前を知りたくなるのが人情というもの。
そこで、名前を取得するには下記メソッドを使用します。

Route::currentRouteName()

設定例1のルートの名前は下記になります。

"abc"

全ての名前が結合された形で取得します。 これだと階層がわかりにくいので名前に区切り用の記号をつけたりすると少し見やすくなるでしょう。

バージョンアップ

5.6では脆弱性が見つかりバージョンアップが推奨されています。

https://scan.netsecurity.ne.jp/article/2018/10/10/41473.html

見事に対象バージョンだった為、Laravelのアップグレードを行うことにしました。
しかし、調べてみても具体例がみつからず、途方にくれた経験から備忘録として残しておきます。
常識だよ、と思われた方には申し訳ございません。と先に言っておきます。

composer update laravel/framework

以上です。

今回、同じ5.6系なのでcomposer.jsonはそのままでOK。
指定パッケージだけ更新します。

最後に、

php artisan --version

でバージョンアップを確認。 ついでに、

php artisan cache:clear

でキャッシュをクリアしときましょう。

Carbon

Carbon使ってますか?
私は、世の中がなんか使うのが普通でしょ?的な空気感ですので、特に逆らうことなく使用してます。
Laravelでは標準でインストールされますし。

で、いざLaravelで使おうとすると、どこにあるかわからず格納場所を探すハメになります。
いろいろ調べた結果、use Carbon\Carbonすればいいのだとわかりました。

が、毎回ソースに書いていくのはめんどくさい。
そこで、ヘルパ関数のnow()を使います。
実行すると、現在時刻のCarbonインスタンスを取得できます。
これでいちいちuseしなくてもよくなります。

といったところで、ネタがつきました。
皆さんのお役に少しでもたてば幸いです。


株式会社grasys(グラシス)は、技術が好きで一緒に夢中になれる仲間を募集しています。

grasysは、大規模・高負荷・高集積・高密度なシステムを多く扱っているITインフラの会社です。Google Cloud (GCP)、Amazon Web Services (AWS)、Microsoft Azureの最先端技術を活用してクラウドインフラやデータ分析基盤など、ITシステムの重要な基盤を設計・構築し、改善を続けながら運用しています。

お客様の課題解決をしながら技術を広げたい方、攻めのインフラ技術を習得したい方、とことん技術を追求したい方にとって素晴らしい環境が、grasysにはあります。
お気軽にご連絡ください。


採用情報
お問い合わせ