skillup

技術ブログ

PHP

サービスプロバイダとは

投稿日:

Laravelをやっていて、次に分かり難かった概念、サービスプロバイダについて。

アプリケーション開発にはデータベース、ファイル操作、ログ操作など様々な操作があり、個別のビジネス処理以外で共通化できるものが多々あります。

これらをサービスコンテナといい、Laravelでは config/app.php で一覧が列挙され、個別のProvidersに関しては app/Providers 以下に定義されています。

一例としてDebugbarを登録した時の例です。

config/app.php

app/Providers/AppServiceProvider.php

このように登録することによって、メリットはMiddlewareと近いのですが、

  • 個別のビジネスロジックに共通処理を入れる必要がない
  • 変更があった時にここのビジネスロジックとサービスが連動しておらず、保守性が高い

と言うことが言えるかと思います。

-PHP
-

執筆者:


comment

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

関連記事

no image

underbarphpについて+配列処理頻出パターン

配列系の処理を関数型で行いたいときにJavaだとラムダ式、javaScriptだとunderscore.jsがあります。 PHPではできないものか・・といろいろと探していたところunderbar.ph …

no image

herokuでのmb_convert_encoding

herokuにあげたアプリを起動しようとしたらmb_convert_encodingでundefinedエラーが帰ってきました。 どうやらマルチバイトのライブラリがないエラーのようですね。 といいつつ …

no image

PHPで配列の同一性(集合のチェック)

AとBという配列があり、A⊂B つまりは集合のような関係を確かめたいときに下記のようなメソッドを使います。  

no image

Angularでのイベント+改行+echoでのバッファサイズ変更

Contents1 Angularのイベント処理2 Angularでの改行ネタ3 echoでのバッファサイズ変換 Angularのイベント処理 Angularを使っていて楽なのはHTMLタグにインベン …

no image

streamについて

CSVダウンロード機能などを実装していて、動くコードはかけていますが、内容をよく理解していないことも多かったです。 今回はストリームについて。 ストリームとは 主にデータの総量がわからないケースでよく …

アーカイブ