Closure クラス

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

はじめに

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

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

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

クラス概要

finalclassClosure {
private__construct()
publicstaticbind(Closure$closure, ?object$newThis, object|string|null$newScope = "static"): ?Closure
publicbindTo(?object$newThis, object|string|null$newScope = "static"): ?Closure
publiccall(object$newThis, mixed...$args): mixed
publicstaticfromCallable(callable$callback): Closure
}

目次

  • Closure::__construct — インスタンス作成を無効化したコンストラクタ
  • Closure::bind — バインドされたオブジェクトとクラスのスコープでクロージャを複製する
  • Closure::bindTo — 新しくバインドしたオブジェクトとクラスのスコープで、クロージャを複製する
  • Closure::call — クロージャを束縛して呼び出す
  • Closure::fromCallable — callable をクロージャに変換する
To Top