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


PHP DatabaseConnection::prepare_PREPAREDquery方法代码示例

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


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

示例1: prepare_PREPAREDquery

 /**
  * Prepares a prepared query.
  *
  * @param string $query The query to execute
  * @param array $queryComponents The components of the query to execute
  * @return bool|\mysqli_statement|\TYPO3\CMS\Dbal\Database\AdodbPreparedStatement
  * @throws \RuntimeException
  * @internal This method may only be called by \TYPO3\CMS\Core\Database\PreparedStatement
  */
 public function prepare_PREPAREDquery($query, array $queryComponents)
 {
     $pt = $this->debug ? GeneralUtility::milliseconds() : 0;
     // Get handler key and select API:
     $preparedStatement = NULL;
     switch ($queryComponents['handler']) {
         case 'native':
             $this->lastQuery = $query;
             $preparedStatement = parent::prepare_PREPAREDquery($this->lastQuery, $queryComponents);
             $this->resourceIdToTableNameMap[serialize($preparedStatement)] = $queryComponents['ORIG_tableName'];
             break;
         case 'adodb':
             /** @var \TYPO3\CMS\Dbal\Database\AdodbPreparedStatement $preparedStatement */
             $preparedStatement = GeneralUtility::makeInstance(\TYPO3\CMS\Dbal\Database\AdodbPreparedStatement::class, $query, $queryComponents, $this);
             if (!$preparedStatement->prepare()) {
                 $preparedStatement = FALSE;
             }
             break;
         case 'userdefined':
             throw new \RuntimeException('prepare_PREPAREDquery is not implemented for userdefined handlers', 1394620167);
             /*
             $queryParts = $queryComponents['queryParts'];
             $preparedStatement = $this->handlerInstance[$this->lastHandlerKey]->exec_SELECTquery($queryParts['SELECT'], $queryParts['FROM'], $queryParts['WHERE'], $queryParts['GROUPBY'], $queryParts['ORDERBY'], $queryParts['LIMIT']);
             if (is_object($preparedStatement)) {
             	$preparedStatement->TYPO3_DBAL_handlerType = 'userdefined';
             	// Setting handler type in result object (for later recognition!)
             	$preparedStatement->TYPO3_DBAL_tableList = $queryComponents['ORIG_tableName'];
             }
             break;
             */
     }
     if ($this->printErrors && $this->sql_error()) {
         debug(array($this->lastQuery, $this->sql_error()));
     }
     if ($this->debug) {
         $data = array('handlerType' => $queryComponents['handler'], 'args' => $queryComponents, 'ORIG_from_table' => $queryComponents['ORIG_tableName']);
         $this->debugHandler('prepare_PREPAREDquery', GeneralUtility::milliseconds() - $pt, $data);
     }
     // Return result handler.
     return $preparedStatement;
 }
开发者ID:plan2net,项目名称:TYPO3.CMS,代码行数:50,代码来源:DatabaseConnection.php


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