Container
class Container (View source)
Properties
static array | $registry | Berisi list dependensi terdaftar. |
|
static array | $singletons | Berisi instance singleton yang telah diresolve. |
Methods
Daftarkan objek berikut resolvernya.
Periksa apakah objek sudah terdaftar di container atau belum.
Daftarkan instance yang sudah ada sebagai singleton.
Resolve nama yang diberikan menjadi sebuah instance objek.
Instansiasi tipe objek yang diberikan.
Resolve seluruh dependensi dari ReflectionParameter.
Resolve parameter opsional untuk dependency injection kita.
Details
static
register(string $name, mixed $resolver = null, bool $singleton = false)
Daftarkan objek berikut resolvernya.
static bool
registered(string $name)
Periksa apakah objek sudah terdaftar di container atau belum.
static
singleton(string $name, Closure $resolver = null)
Daftarkan sebuah objek (singleton).
Singleton hanya akan diinstansiasi sekali saja, saat objek itu diresolve.
static
instance(string $name, mixed $instance)
Daftarkan instance yang sudah ada sebagai singleton.
// Daftarkan instance mailer sebagai singleton.
Container::instance('mailer', new Mailer());
static mixed
resolve(string $type, array $parameters = [])
Resolve nama yang diberikan menjadi sebuah instance objek.
// Ambil instance objek 'mailer'
$mailer = Container::resolve('mailer');
// Ambil instance objek 'mailer' dan oper sebuah parameter
$mailer = Container::resolve('mailer', ['test']);
static protected mixed
build(string $type, array $parameters = [])
Instansiasi tipe objek yang diberikan.
static protected array
dependencies(array $parameters, array $arguments)
Resolve seluruh dependensi dari ReflectionParameter.
static protected mixed
resolve_non_class(ReflectionParameter $parameter)
Resolve parameter opsional untuk dependency injection kita.