in /var/www/eggcomics/data/www/prod.eggporncomics.com/vendor/yiisoft/yii2/db/Connection.php at line 695
if ($enableProfiling) { Yii::endProfile($token, __METHOD__); } } catch (\PDOException $e) { if ($enableProfiling) { Yii::endProfile($token, __METHOD__); } throw new Exception($e->getMessage(), $e->errorInfo, (int) $e->getCode(), $e); } } /** * Closes the currently active DB connection. * It does nothing if the connection is already closed. */ public function close() {
* Returns the PDO instance for the currently active master connection. * This method will open the master DB connection and then return [[pdo]]. * @return PDO the PDO instance for the currently active master connection. */ public function getMasterPdo() { $this->open(); return $this->pdo; } /** * Returns the currently active slave connection. * If this method is called for the first time, it will try to open a slave connection when [[enableSlaves]] is true.
* is available and `$fallbackToMaster` is false. */ public function getSlavePdo($fallbackToMaster = true) { $db = $this->getSlave(false); if ($db === null) { return $fallbackToMaster ? $this->getMasterPdo() : null; } return $db->pdo; } /**
* * @return bool * @see https://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html */ private function supportsFractionalSeconds() { $version = $this->db->getSlavePdo()->getAttribute(\PDO::ATTR_SERVER_VERSION); return version_compare($version, '5.6.4', '>='); } /** * Returns the map for default time type. * If the version of MySQL is lower than 5.6.4, then the types will be without fractional seconds,
$map = [ Schema::TYPE_DATETIME => 'datetime', Schema::TYPE_TIMESTAMP => 'timestamp', Schema::TYPE_TIME => 'time', ]; if ($this->supportsFractionalSeconds()) { $map = [ Schema::TYPE_DATETIME => 'datetime(0)', Schema::TYPE_TIMESTAMP => 'timestamp(0)', Schema::TYPE_TIME => 'time(0)', ]; }
* {@inheritdoc} */ public function init() { parent::init(); $this->typeMap = array_merge($this->typeMap, $this->defaultTimeTypeMap()); } /** * {@inheritdoc} */ protected function defaultExpressionBuilders()
*/ public function __construct($config = []) { if (!empty($config)) { Yii::configure($this, $config); } $this->init(); } /** * Initializes the object. * This method is invoked at the end of the constructor after the object is initialized with the * given configuration.
* @param Connection $connection the database connection. * @param array $config name-value pairs that will be used to initialize the object properties */ public function __construct($connection, $config = []) { $this->db = $connection; parent::__construct($config); } /** * {@inheritdoc} */ public function init()
/** * Creates a query builder for the MySQL database. * @return QueryBuilder query builder instance */ public function createQueryBuilder() { return new QueryBuilder($this->db); } /** * Resolves the table name and schema name (if any). * @param TableSchema $table the table metadata object * @param string $name the table name
/** * @return QueryBuilder the query builder for this connection. */ public function getQueryBuilder() { if ($this->_builder === null) { $this->_builder = $this->createQueryBuilder(); } return $this->_builder; } /**
/** * Returns the query builder for the current DB connection. * @return QueryBuilder the query builder for the current DB connection. */ public function getQueryBuilder() { return $this->getSchema()->getQueryBuilder(); } /** * Can be used to set [[QueryBuilder]] configuration via Connection configuration array. * * @param array $value the [[QueryBuilder]] properties to be configured.
$modelClass = $this->modelClass; if ($db === null) { $db = $modelClass::getDb(); } if ($this->sql === null) { list($sql, $params) = $db->getQueryBuilder()->build($this); } else { $sql = $this->sql; $params = $this->params; } $command = $db->createCommand($sql, $params);
public function one($db = null) { if ($this->emulateExecution) { return false; } return $this->createCommand($db)->queryOne(); } /** * Returns the query result as a scalar value. * The value returned will be the first column in the first row of the query results. * @param Connection $db the database connection used to generate the SQL statement.
* @return ActiveRecord|array|null a single row of query result. Depending on the setting of [[asArray]], * the query result may be either an array or an ActiveRecord object. `null` will be returned * if the query results in nothing. */ public function one($db = null) { $row = parent::one($db); if ($row !== false) { $models = $this->populate([$row]); return reset($models) ?: null; } return null;
/** * {@inheritdoc} * @return \app\models\Tag|array|null */ public function one($db = null) { return parent::one($db); } }
/** * {@inheritdoc} * @return static|null ActiveRecord instance matching the condition, or `null` if nothing matches. */ public static function findOne($condition) { return static::findByCondition($condition)->one(); } /** * {@inheritdoc} * @return static[] an array of ActiveRecord instances, or an empty array if nothing matches. */
public static function findById(int $id) { $key = self::getCacheTag() . __FUNCTION__ . $id; $data = cache()->get($key); if ($data === false) { $data = self::findOne($id); if ($data) { cache()->set($key, $data, 86400, td(self::getCacheTag())); } } return $data;
} } } if (preg_match('#^comics\-tag/([\d]+)/([\w_-]+)$#', $path, $m)) { if (count($m) == 3) { $tag = Tag::findById($m[1]); if ($tag) { $tagAlias = explode(',', $tag->alias); $tagAliasLast = array_pop($tagAlias); if ($tag->alias == '') { return ['site/tag', ['id' => $m[1], 'title' => $m[2]]];
*/ public function parseRequest($request) { if ($this->enablePrettyUrl) { /* @var $rule UrlRule */ foreach ($this->rules as $rule) { $result = $rule->parseRequest($this, $request); if (YII_DEBUG) { Yii::debug([ 'rule' => method_exists($rule, '__toString') ? $rule->__toString() : get_class($rule), 'match' => $result !== false, 'parent' => null, ], __METHOD__);
* Resolves the current request into a route and the associated parameters. * @return array the first element is the route, and the second is the associated parameters. * @throws NotFoundHttpException if the request cannot be resolved. */ public function resolve() { $result = Yii::$app->getUrlManager()->parseRequest($this); if ($result !== false) { list($route, $params) = $result; if ($this->_queryParams === null) { $_GET = $params + $_GET; // preserve numeric keys } else { $this->_queryParams = $params + $this->_queryParams;
* @throws NotFoundHttpException if the requested route is invalid */ public function handleRequest($request) { if (empty($this->catchAll)) { try { list($route, $params) = $request->resolve(); } catch (UrlNormalizerRedirectException $e) { $url = $e->url; if (is_array($url)) { if (isset($url[0])) { // ensure the route is absolute $url[0] = '/' . ltrim($url[0], '/');
{ try { $this->state = self::STATE_BEFORE_REQUEST; $this->trigger(self::EVENT_BEFORE_REQUEST); $this->state = self::STATE_HANDLING_REQUEST; $response = $this->handleRequest($this->getRequest()); $this->state = self::STATE_AFTER_REQUEST; $this->trigger(self::EVENT_AFTER_REQUEST); $this->state = self::STATE_SENDING_RESPONSE; $response->send();
include('../helpers/functions.php'); function dd($a) { return d($a); } (new yii\web\Application($config))->run();
$_GET = [ 'page' => '10', 'per-page' => '', ];