public function __construct() { // Define PDO instance if ($this->pdo === null) { try { $config = Config::getInstance(); $dbConfig = $config->load('app')->get("database"); $this->pdo = new PDO('mysql:dbname=' . $dbConfig['DB_DATABASE'] . ';host=' . $dbConfig['DB_HOST'], $dbConfig['DB_USERNAME'], $dbConfig['DB_PASSWORD']); // Set default fetch mode $this->pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); // Set MySQL specific attributes if ($this->pdo->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') { $this->pdo->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES utf8"); } } catch (\PDOException $exception) { throw new \Exception($exception->getMessage()); } } }
/** * Construct. * * @param \Aura\Sql\ExtendedPdo $dbal * @param \Aura\Filter\FilterFactory $filter */ public function __construct(ExtendedPdo $dbal, FilterFactory $filter) { $this->dbal = $dbal; $this->query = new QueryFactory($dbal->getAttribute(PDO::ATTR_DRIVER_NAME)); parent::__construct($filter); }