Closure クラス

はじめに

無名関数 を表すために使うクラスです。

無名関数は、Closure 型のオブジェクトを生成します。 このクラスにはメソッドが用意され、 生成した無名関数をさらにコントロールできるようになっています。

ここであげたメソッド以外にも、このクラスには __invoke メソッドが存在します。 これは、マジックメソッド __invoke() を実装した他のクラスとの一貫性を保つためのものであり、 関数をコールするときにこのメソッドは使われません。

クラス概要

final Closure
/* メソッド */
private __construct()
public static Closurenull bind(Closure $closure, objectnull $newThis, objectstringnull $newScope = "static")
public Closurenull bindTo(objectnull $newThis, objectstringnull $newScope = "static")
public mixed call(object $newThis, mixed ...$args)
public static Closure fromCallable(callable $callback)
目次
  • Closure::__construct — インスタンス作成を無効化したコンストラクタ
  • Closure::bind — バインドされたオブジェクトとクラスのスコープでクロージャを複製する
  • Closure::bindTo — 新しくバインドしたオブジェクトとクラスのスコープで、クロージャを複製する
  • Closure::call — クロージャを束縛して呼び出す
  • Closure::fromCallable — callable をクロージャに変換する