「Laravel Webアプリケーション開発」という書籍を読んで勉強しています。
bindメソッドの例で下記のコードがあります。
php:
1class Number 2{ 3 protected $number; 4 5 public function __construct($number = 0) 6 { 7 $this->number = $number; 8 } 9 10 public function getNumber() 11 { 12 return $this->number; 13 } 14} 15 16// ① バインド処理 17app()->bind(Number::class, function () { 18 return new Number(); 19}); 20 21$numcls = pp()->make(Number::class); // ② 22$number = $numcls->getNumber();
① bindメソッドの第一引数の Number::class
の指定が何をしているのかわかりません。
バインドメソッドの第一引数には文字列、第二引数にはインスタンスの作成処理をクロージャーで指定と説明があります。
ですので、Number::class
は文字列かと思います。
この記述自体はスコープ定義演算子を使って Number
クラスの class
プロパティにアクセスする記述かと思いますが、定義した Number
には class
プロパティはありません。
この記述はどのような意味で、なぜこのような記述をするのでしょうか?
ご存知の方、教えてくださいm(__)m
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/10/15 00:57