本文整理汇总了PHP中DatabaseBase::freeResult方法的典型用法代码示例。如果您正苦于以下问题:PHP DatabaseBase::freeResult方法的具体用法?PHP DatabaseBase::freeResult怎么用?PHP DatabaseBase::freeResult使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DatabaseBase
的用法示例。
在下文中一共展示了DatabaseBase::freeResult方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getInterwikiList
/**
* Get the interwiki list
* @todo Needs to respect interwiki cache!
* @return array
*/
private function getInterwikiList() {
$result = $this->db->select( 'interwiki', array( 'iw_prefix' ) );
$prefixes = array();
foreach( $result as $row ) {
$prefixes[] = $row->iw_prefix;
}
$this->db->freeResult( $result );
return $prefixes;
}
示例2: __getResults
private static function __getResults()
{
global $wgLang;
wfProfileIn(__METHOD__);
/* main query */
$aResult = array();
$aFields = array('/* BLOGS */ rev_page as page_id', 'page_namespace', 'page_title', 'min(rev_timestamp) as create_timestamp', 'unix_timestamp(rev_timestamp) as timestamp', 'rev_timestamp', 'min(rev_id) as rev_id', 'rev_user');
$res = self::$dbr->select(array_map(array(self::$dbr, 'tableName'), self::$aTables), $aFields, self::$aWhere, __METHOD__, self::__makeDBOrder());
while ($oRow = self::$dbr->fetchObject($res)) {
if (class_exists('ArticleCommentList')) {
$oComments = ArticleCommentList::newFromText($oRow->page_title, $oRow->page_namespace);
$iCount = $oComments ? $oComments->getCountAllNested() : 0;
} else {
$iCount = 0;
}
/* username */
$oTitle = Title::newFromText($oRow->page_title, $oRow->page_namespace);
$sUsername = "";
if (!$oTitle instanceof Title) {
continue;
}
$username = BlogArticle::getOwner($oTitle);
$oRevision = Revision::newFromTitle($oTitle);
$aResult[$oRow->page_id] = array("page" => $oRow->page_id, "namespace" => $oRow->page_namespace, "title" => $oRow->page_title, "page_touched" => !is_null($oRevision) ? $oRevision->getTimestamp() : $oTitle->getTouched(), "rev_timestamp" => $oRow->rev_timestamp, "timestamp" => $oRow->timestamp, "username" => isset($username) ? $username : "", "text" => self::__getRevisionText($oRow->page_id, $oRevision), "revision" => $oRow->rev_id, "comments" => $iCount, "votes" => '', "props" => BlogArticle::getProps($oRow->page_id));
// Sort by comment count for popular blog posts module
if (isset(self::$aOptions['order']) && self::$aOptions['order'] == 'page_id') {
uasort($aResult, array("BlogTemplateClass", "__sortByCommentCount"));
}
// We may need to query for 50 results but display 5
if (isset(self::$aOptions['displaycount']) && self::$aOptions['displaycount'] != self::$aOptions['count']) {
$aResult = array_slice($aResult, 0, self::$aOptions['displaycount']);
}
}
// macbre: change for Oasis to add avatars and comments / likes data
wfRunHooks('BlogTemplateGetResults', array(&$aResult));
self::$dbr->freeResult($res);
wfProfileOut(__METHOD__);
return $aResult;
}
示例3: free
/**
* Free a result object
*/
function free()
{
$this->db->freeResult($this);
unset($this->result);
unset($this->db);
}
示例4: getCurrentPropertyTableContents
/**
* Get the current data stored for the given ID in the given database
* table. The result is an array of updates, formatted like the one of
* the table insertion arrays created by preparePropertyTableInserts().
*
* @note Tables without IDs as subject are not supported. They will
* hopefully vanish soon anyway.
*
* @since 1.8
* @param integer $sid
* @param SMWSQLStore3Table $tableDeclaration
* @param DatabaseBase $dbr used for reading only
* @return array
*/
protected function getCurrentPropertyTableContents($sid, SMWSQLStore3Table $propertyTable, DatabaseBase $dbr)
{
if (!$propertyTable->usesIdSubject()) {
// does not occur, but let's be strict
throw new InvalidArgumentException('Operation not supported for tables without subject IDs.');
}
$contents = array();
$results = $dbr->select($propertyTable->getName(), '*', array('s_id' => $sid), __METHOD__);
foreach ($results as $result) {
$rowArray = (array) $result;
$rowKey = self::makeDatabaseRowKey($rowArray);
$contents[$rowKey] = $rowArray;
}
$dbr->freeResult($results);
return $contents;
}
示例5: refreshPropertyStatistics
/**
* Update the usage count in the property statistics table for all
* properties. This function also initialises the required entry for
* all properties that have IDs in the SMW IDs table.
*
* @since 1.8
* @param boolean $verbose
* @param DatabaseBase $dbw used for writing
*/
protected function refreshPropertyStatistics($verbose, $dbw)
{
$this->reportProgress("Updating property statistics. This may take a while.\n", $verbose);
$res = $dbw->select(SMWSql3SmwIds::tableName, array('smw_id', 'smw_title'), array('smw_namespace' => SMW_NS_PROPERTY), __METHOD__);
$propertyTables = SMWSQLStore3::getPropertyTables();
foreach ($res as $row) {
$this->reportProgress('.', $verbose);
$usageCount = 0;
foreach ($propertyTables as $propertyTable) {
if ($propertyTable->isFixedPropertyTable() && $propertyTable->getFixedProperty() != $row->smw_title) {
// This table cannot store values for this property
continue;
}
$propRow = $dbw->selectRow($propertyTable->getName(), 'Count(*) as count', $propertyTable->isFixedPropertyTable() ? array() : array('p_id' => $row->smw_id), __METHOD__);
$usageCount += $propRow->count;
}
$dbw->replace(SMWSQLStore3::PROPERTY_STATISTICS_TABLE, 'p_id', array('p_id' => $row->smw_id, 'usage_count' => $usageCount), __METHOD__);
}
$this->reportProgress("\nUpdated statistics for {$res->numRows()} Properties.\n", $verbose);
$dbw->freeResult($res);
}