當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。