ClosureのbindとbindToの使用法についてはPHPマニュアルを参照してください。本当に理解できませんし、概念も理解できません。
たとえば、Closure::bind については、マニュアルには「クロージャをコピーし、指定された $this オブジェクトとクラス スコープをバインドする」と記載されています。これをどのように理解すればよいでしょうか?
クロージャと $this はどのように結合されますか?クラススコープは何に使用されますか?
また、1 つは静的バージョン、もう 1 つは動的バージョンです。これは何を指しますか?
与えられた例を使用してこれらの概念を説明できますか?
ありがとう
ClosureのbindとbindToの使用法についてはPHPマニュアルを参照してください。本当に理解できませんし、概念も理解できません。
たとえば、Closure::bind については、マニュアルには「クロージャをコピーし、指定された $this オブジェクトとクラス スコープをバインドする」と記載されています。これをどのように理解すればよいでしょうか?
クロージャと $this はどのように結合されますか?クラススコープは何に使用されますか?
また、1 つは静的バージョン、もう 1 つは動的バージョンです。これは何を指しますか?
与えられた例を使用してこれらの概念を説明できますか?
ありがとう
これまでに使ったことがあるかどうかわかりませんがjs
中的call
或者apply
、少し似ています
実際、クロージャはオブジェクトのメンバーメソッドまたは静的メンバーメソッドとして扱われます。
リーリーメンバーメソッドで$this
访问对象, 静态成员方法直接使用类名::成员
メソッドを使用します。
ただし、これは匿名関数であり、関数名がないため、$thisオブジェクトと使用できるクラススコープをバインドしたクロージャを返します。