LaravelでSlack通知を実装する~ソーシャルではなく開発者/管理者としてのSlack通知~
- Laravel
LaravelではモデルベースでのSlack通知は色々と情報がありますが、単純なSlack通知ってなかなか方法が出回っていなかったりします。しかし開発者からしてみると、単純にアラートとしてSlack通知を活用したりなどの用途で使用したい場合も結構あります。今回は、シンプルなSlack通知を実装していきます。
LaravelではモデルベースでのSlack通知は色々と情報がありますが、単純なSlack通知ってなかなか方法が出回っていなかったりします。しかし開発者からしてみると、単純にアラートとしてSlack通知を活用したりなどの用途で使用したい場合も結構あります。今回は、シンプルなSlack通知を実装していきます。
PSR-13では、PHP開発者に、使用されるシリアライズフォーマットとは独立したハイパーメディアリンクを表す簡単で一般的な方法を提供することを目的としています。 これにより、システムは、ハイパーメディアリンクによる応答を、それらのリンクが何であるべきかを決定するプロセスとは独立して、1つ以上のワイヤフォーマットにシリアル化することができます。
Laravelのサービスコンテナを使って依存注入を行います。
PSR-11では、依存性注入コンテナの共通インタフェースについて定義しています。ContainerInterfaceによってフレームワークとライブラリがオブジェクトとパラメータを取得するためにコンテナをどのように使用するかを標準化することを目標としています。
CakePHPのコントローラ内にtry/catchを仕込み、トランザクションの一連の処理を実装します。データベースを絡めた処理の場合に、その整合性を保つ為に、エラーが出たら処理前の状態に戻して終了させたい場合があります。そんな時に必要なのは、トランザクションという仕組みです。また、それを実現する為に基本的には、エラーが発生し例外が投げられた際にそれをキャッチし独自の処理を実装する必要があります。
PHPからAWS S3を操作するには専用のSDKである「AWS SDK for PHP」が用いられますが、CakePHPにそれを導入し、一連のファイル操作を行います。