<?php /* * Copyright © 2021 ExacTI Technology Solutions. All rights reserved. * GPLv3 General License. * https://exacti.com.br * Phacil PHP Framework - https://github.com/exacti/phacil-framework */ namespace Phacil\Framework\Databases\Driver; use Phacil\Framework\Databases\Api\DriverInterface; /** * Nullable fake simulated DB connection. * * @package Phacil\Framework\Databases */ final class nullStatement implements DriverInterface { //private $connection; const DB_TYPE = NULL; const DB_TYPE_ID = 0; /** * * {@inheritdoc} */ public function getDBType() { return self::DB_TYPE; } /** * * {@inheritdoc} */ public function getDBTypeId() { return self::DB_TYPE_ID; } /** {@inheritdoc} */ public function __construct($hostname = null, $username = null, $password = null, $database = null, $charset = 'utf8mb4') { //$this->connection = NULL; } /** {@inheritdoc} */ public function isConnected() { return false; } /** * {@inheritdoc} */ public function query($sql) { /** @var \Phacil\Framework\Databases\Api\Object\ResultInterface */ $result = \Phacil\Framework\Registry::getInstance()->create(\Phacil\Framework\Databases\Api\Object\ResultInterface::class, [[]]); $result->setNumRows(0); return $result; } /** {@inheritdoc} */ public function escape($value) { return NULL; } /** {@inheritdoc} */ public function countAffected() { return NULL; } /** {@inheritdoc} */ public function getLastId() { return NULL; } /** * {@inheritdoc} */ public function execute($sql, array $params = []) { return $this->query($sql); } }