- var_dump: documentation ( source)
<?php
class Mailer{
}
class Container
{
static protected $shared = array();
protected $parameters = array();
public function __construct(array $parameters = array())
{
$this->parameters = $parameters;
var_dump($parameters);
}
// ...
public function getMailer()
{
if (isset(self::$shared['mailer']))
{
return self::$shared['mailer'];
}
$class = $this->parameters['mailer.class'];
$mailer = new $class();
return self::$shared['mailer'] = $mailer;
}
}
$container = new Container(array(
'mailer.username' => 'foo',
'mailer.password' => 'bar',
'mailer.class' => 'Mailer',
));
$mailer = $container->getMailer();
var_dump($mailer);