for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Deployee\Components\Config;
class Config implements ConfigInterface
{
/**
* @var array|\ArrayAccess
*/
private $params;
* Config constructor.
* @param array|\ArrayAccess|null $params
public function __construct($params = null)
if($params !== null){
$this->setParams($params);
}
* @param array|\ArrayAccess $params
public function setParams($params)
if(!is_array($params)
&& !$params instanceof \ArrayAccess){
$params
ArrayAccess
throw new \InvalidArgumentException("Params must be array or implement \\ArrayAcess interface");
$this->params = $params;
* @param string $name
* @param mixed $default
* @return mixed
public function get($name, $default = null)
return $this->params[$name] ?? $default;
* @param mixed $value
public function set(string $name, $value)
$this->params[$name] = $value;