当前位置: 首页>>代码示例>>PHP>>正文


PHP Connection::getPdo方法代码示例

本文整理汇总了PHP中Illuminate\Database\Connection::getPdo方法的典型用法代码示例。如果您正苦于以下问题:PHP Connection::getPdo方法的具体用法?PHP Connection::getPdo怎么用?PHP Connection::getPdo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Illuminate\Database\Connection的用法示例。


在下文中一共展示了Connection::getPdo方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: addQuery

 /**
  *
  * @param string $query
  * @param array $bindings
  * @param float $time
  * @param \Illuminate\Database\Connection $connection
  */
 public function addQuery($query, $bindings, $time, $connection)
 {
     $time = $time / 1000;
     $endTime = microtime(true);
     $startTime = $endTime - $time;
     $pdo = $connection->getPdo();
     $bindings = $connection->prepareBindings($bindings);
     $bindings = $this->checkBindings($bindings);
     if (!empty($bindings) && $this->renderSqlWithParams) {
         foreach ($bindings as $binding) {
             $query = preg_replace('/\\?/', $pdo->quote($binding), $query, 1);
         }
     }
     $source = null;
     if ($this->findSource) {
         try {
             $source = $this->findSource();
         } catch (\Exception $e) {
         }
     }
     $this->queries[] = array('query' => $query, 'bindings' => $bindings, 'time' => $time, 'source' => $source);
     if ($this->timeCollector !== null) {
         $this->timeCollector->addMeasure($query, $startTime, $endTime);
     }
 }
开发者ID:jairoserrano,项目名称:SimpleBlogClase,代码行数:32,代码来源:QueryCollector.php

示例2: addQuery

 /**
  *
  * @param string $query
  * @param array $bindings
  * @param float $time
  * @param \Illuminate\Database\Connection $connection
  */
 public function addQuery($query, $bindings, $time, $connection)
 {
     $explainResults = array();
     $time = $time / 1000;
     $endTime = microtime(true);
     $startTime = $endTime - $time;
     $hints = $this->performQueryAnalysis($query);
     $pdo = $connection->getPdo();
     $bindings = $connection->prepareBindings($bindings);
     // Run EXPLAIN on this query (if needed)
     if ($this->explainQuery && preg_match('/^(' . implode($this->explainTypes) . ') /i', $query)) {
         $statement = $pdo->prepare('EXPLAIN ' . $query);
         $statement->execute($bindings);
         $explainResults = $statement->fetchAll(\PDO::FETCH_CLASS);
     }
     $bindings = $this->checkBindings($bindings);
     if (!empty($bindings) && $this->renderSqlWithParams) {
         foreach ($bindings as $binding) {
             $query = preg_replace('/\\?/', $pdo->quote($binding), $query, 1);
         }
     }
     $source = null;
     if ($this->findSource) {
         try {
             $source = $this->findSource();
         } catch (\Exception $e) {
         }
     }
     $this->queries[] = array('query' => $query, 'bindings' => $this->escapeBindings($bindings), 'time' => $time, 'source' => $source, 'explain' => $explainResults, 'hints' => $hints);
     if ($this->timeCollector !== null) {
         $this->timeCollector->addMeasure($query, $startTime, $endTime);
     }
 }
开发者ID:aleguisf,项目名称:fvdev1,代码行数:40,代码来源:QueryCollector.php

示例3: ensureTransaction

 /**
  * Enures the given closur is executed within a PDO transaction.
  *
  * @param  Closure  $callback
  * @return void
  */
 public function ensureTransaction(Closure $callback)
 {
     if (!$this->connection->getPdo()->inTransaction()) {
         $this->connection->transaction($callback);
     } else {
         $callback($this->connection);
     }
 }
开发者ID:sohailaammarocs,项目名称:lfc,代码行数:14,代码来源:IlluminateWorker.php

示例4: addQuery

 /**
  *
  * @param string $query
  * @param array $bindings
  * @param float $time
  * @param \Illuminate\Database\Connection $connection
  */
 public function addQuery($query, $bindings, $time, $connection)
 {
     $explainResults = [];
     $time = $time / 1000;
     $endTime = microtime(true);
     $startTime = $endTime - $time;
     $hints = $this->performQueryAnalysis($query);
     $pdo = $connection->getPdo();
     $bindings = $connection->prepareBindings($bindings);
     // Run EXPLAIN on this query (if needed)
     if ($this->explainQuery && preg_match('/^(' . implode($this->explainTypes) . ') /i', $query)) {
         $statement = $pdo->prepare('EXPLAIN ' . $query);
         $statement->execute($bindings);
         $explainResults = $statement->fetchAll(\PDO::FETCH_CLASS);
     }
     $bindings = $this->checkBindings($bindings);
     if (!empty($bindings) && $this->renderSqlWithParams) {
         foreach ($bindings as $key => $binding) {
             // This regex matches placeholders only, not the question marks,
             // nested in quotes, while we iterate through the bindings
             // and substitute placeholders by suitable values.
             $regex = is_numeric($key) ? "/\\?(?=(?:[^'\\\\']*'[^'\\\\']*')*[^'\\\\']*\$)/" : "/:{$key}(?=(?:[^'\\\\']*'[^'\\\\']*')*[^'\\\\']*\$)/";
             $query = preg_replace($regex, $pdo->quote($binding), $query, 1);
         }
     }
     $source = null;
     if ($this->findSource) {
         try {
             $source = $this->findSource();
         } catch (\Exception $e) {
         }
     }
     $this->queries[] = ['query' => $query, 'bindings' => $this->escapeBindings($bindings), 'time' => $time, 'source' => $source, 'explain' => $explainResults, 'connection' => $connection->getDatabaseName(), 'hints' => $this->showHints ? $hints : null];
     if ($this->timeCollector !== null) {
         $this->timeCollector->addMeasure($query, $startTime, $endTime);
     }
 }
开发者ID:barryvdh,项目名称:laravel-debugbar,代码行数:44,代码来源:QueryCollector.php

示例5: setPdoForType

 /**
  * Prepare the read write mode for database connection instance.
  *
  * @param  \Illuminate\Database\Connection  $connection
  * @param  string  $type
  * @return \Illuminate\Database\Connection
  */
 protected function setPdoForType(Connection $connection, $type = null)
 {
     if ($type == 'read') {
         $connection->setPdo($connection->getReadPdo());
     } elseif ($type == 'write') {
         $connection->setReadPdo($connection->getPdo());
     }
     return $connection;
 }
开发者ID:hilmysyarif,项目名称:sisfito,代码行数:16,代码来源:DatabaseManager.php

示例6: __construct

 /**
  * @param null|string $connectionName
  */
 public function __construct($connectionName = null)
 {
     $connection = is_null($connectionName) ? Config::get('database.default') : DB::connection($connectionName);
     $this->connection = DB::connection($connection);
     $this->connection->getPdo()->exec('use INFORMATION_SCHEMA');
 }
开发者ID:simlux,项目名称:laravel-generator,代码行数:9,代码来源:InformationSchema.php

示例7: getLastId

 public function getLastId()
 {
     return $this->connection->getPdo()->lastInsertId();
 }
开发者ID:newcart,项目名称:system,代码行数:4,代码来源:DB.php

示例8: isConnected

 public function isConnected()
 {
     return !empty($this->connection) && $this->connection->getPdo() instanceof \PDO;
 }
开发者ID:minutephp,项目名称:framework,代码行数:4,代码来源:Database.php

示例9: getTraceablePdo

 public function getTraceablePdo()
 {
     return new TraceablePDO($this->db->getPdo());
 }
开发者ID:raisoblast,项目名称:rakitan,代码行数:4,代码来源:PhpDebugBarEloquentCollector.php

示例10: boot

 public function boot(Connection $db)
 {
     $this->publishes([__DIR__ . '/config/log.php' => config_path('log.php')], 'zedisdog/mysqlHandler');
     $mysqlHandler = new MySQLHandler($db->getPdo(), config('log.table', 'log'), [], Logger::DEBUG);
     \Log::getMonolog()->pushHandler($mysqlHandler);
 }
开发者ID:zedisdog,项目名称:monolog-database-handler-for-laravel5,代码行数:6,代码来源:MysqlHandlerServiceProvider.php

示例11: createDatabase

    /**
     * @param Connection $db
     * @param array      $creds
     *
     * @return bool
     */
    protected function createDatabase($db, array $creds)
    {
        try {
            $_dbName = $creds['database'];
            if (false === $db->statement(<<<MYSQL
CREATE DATABASE IF NOT EXISTS `{$_dbName}`
MYSQL
)) {
                throw new DatabaseException(json_encode($db->getPdo()->errorInfo()));
            }
            return true;
        } catch (\Exception $_ex) {
            $this->error('[provisioning:database] create database - failure: ' . $_ex->getMessage());
            return false;
        }
    }
开发者ID:rajeshpillai,项目名称:dfe-dreamfactory-provisioner,代码行数:22,代码来源:DatabaseProvisioner.php


注:本文中的Illuminate\Database\Connection::getPdo方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。