for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Nip\Database\Adapters;
/**
* Trait HasAdapterTrait
* @package Nip\Database\Adapters
*/
trait HasAdapterTrait
{
protected $_adapter = null;
* @return AbstractAdapter
public function getAdapter()
if ($this->_adapter == null) {
$this->initAdapter();
}
return $this->_adapter;
* @param $adapter
public function setAdapter($adapter)
$this->_adapter = $adapter;
public function initAdapter()
$this->setAdapterName('MySQLi');
* @param $name
public function setAdapterName($name)
$this->setAdapter($this->newAdapter($name));
*
public function newAdapter($name)
$class = static::getAdapterClass($name);
return new $class();
* @return string
public static function getAdapterClass($name)
return '\Nip\Database\Adapters\\'.$name;