Laravel クラスのインスタンス化方法まとめ
①App::makeでインスタンス化する手順 Controllersディレクトリに HelloWorldクラスを作成します。 App::make でインスタンス化して sayメソッドを実行します。 storage/logs/laravel.log を確認するとインスタンスは2つあります。 ②bind を使ってインスタンス化する手順 Controllersディレクトリに HelloWorldクラスを作成します。 サービスコンテナに bind でクラスを登録します。 これで HelloWorld でインスタンス化できるようになります。 App::make でインスタンス化して sayメソッドを実行します。 storage/logs/laravel.log を確認するとインスタンスは2つあります。 ③singleton を使ってインスタンス化する手順 Controllersディレクトリに HelloWorldクラスを作成します。 サービスコンテナに singleton でクラスを登録します。 これで HelloWorld でインスタンス化できるようになります。 App::make でインスタンス化して sayメソッドを実行します。 storage/logs/laravel.log を確認するとインスタンスは1つです。 ④ファサードでインスタンスを取得する手順 Controllersディレクトリに HelloWorldクラスを作成します。 サービスコンテナに bind でクラスを登録します。 ファサードはシングルトンのように使えます。たとえ↑のサービスコンテナに singleton ではなく bind で登録してもです。ここでの singleton、bind は App::make でインスタンス化するときに使う感じですね。 ファサードクラスを作成します。 ↑の「return […]
Laravel クラスのインスタンス化方法まとめ Read More »