本文整理汇总了PHP中Database_Result::row方法的典型用法代码示例。如果您正苦于以下问题:PHP Database_Result::row方法的具体用法?PHP Database_Result::row怎么用?PHP Database_Result::row使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Database_Result
的用法示例。
在下文中一共展示了Database_Result::row方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: newSetting
/**
* @param Database_Result $objSettings The information from which to initialize the setting from
*
* @return IMetaModelFilterSetting
*/
protected function newSetting(Database_Result $objSettings)
{
$strClass = $GLOBALS['METAMODELS']['filters'][$objSettings->type]['class'];
// TODO: add factory support here.
if ($strClass) {
return new $strClass($this, $objSettings->row());
}
return null;
}
示例2: __construct
/**
* Initialize the object
* @param object
* @return string
*/
public function __construct(Database_Result $objElement)
{
parent::__construct();
$this->arrData = $objElement->row();
$this->space = deserialize($objElement->space);
$this->cssID = deserialize($objElement->cssID, true);
$arrHeadline = deserialize($objElement->headline);
$this->headline = is_array($arrHeadline) ? $arrHeadline['value'] : $arrHeadline;
$this->hl = is_array($arrHeadline) ? $arrHeadline['unit'] : 'h1';
}
示例3: __construct
/**
* Initialize the object
* @param Database_Result
* @param string
*/
public function __construct(Database_Result $objModule, $strColumn = 'main')
{
parent::__construct();
$this->arrData = $objModule->row();
$this->space = deserialize($objModule->space);
$this->cssID = deserialize($objModule->cssID, true);
$arrHeadline = deserialize($objModule->headline);
$this->headline = is_array($arrHeadline) ? $arrHeadline['value'] : $arrHeadline;
$this->hl = is_array($arrHeadline) ? $arrHeadline['unit'] : 'h1';
$this->strColumn = $strColumn;
}
示例4: createStartTag
/**
* Create start tag for given end tag and update it
*
* @param Database_Result $objEndTag
*/
public function createStartTag($objEndTag)
{
$arrStartTag = $objEndTag->row();
unset($arrStartTag['id']);
unset($arrStartTag['sh5_pid']);
$arrStartTag['sh5_tag'] = 'start';
$arrStartTag['sorting'] = $objEndTag->sorting - 1;
// Support GlobalContentelements extension if installed
if (in_array('GlobalContentelements', $this->Config->getActiveModules())) {
$arrStartTag['do'] = $this->Input->get('do');
}
// Insert start tag
$objResult = $this->Database->prepare("INSERT INTO tl_content %s")->set($arrStartTag)->execute();
$intId = $objResult->insertId;
// Update start tag
$this->Database->prepare("UPDATE tl_content %s WHERE id = ?")->set(array('sh5_pid' => $intId))->executeUncached($intId);
// Update end tag
$this->Database->prepare("UPDATE tl_content %s WHERE id = ?")->set(array('sh5_pid' => $intId))->executeUncached($objEndTag->id);
}
示例5: __construct
/**
* Load the relations and optionally process a result set
*
* @param \Database_Result $objResult An optional database result
*/
public function __construct(\Database_Result $objResult = null)
{
parent::__construct();
$objRelations = new \DcaExtractor(static::$strTable);
$this->arrRelations = $objRelations->getRelations();
if ($objResult !== null) {
$this->arrData = $objResult->row();
// Look for joined fields
foreach ($this->arrData as $k => $v) {
if (strpos($k, '__') !== false) {
list($key, $field) = explode('__', $k, 2);
// Create the related model
if (!isset($this->arrRelated[$key])) {
$table = $this->arrRelations[$key]['table'];
$strClass = $this->getModelClassFromTable($table);
$this->arrRelated[$key] = new $strClass();
}
$this->arrRelated[$key]->{$field} = $v;
unset($this->arrData[$k]);
}
}
}
}
示例6: parseArticles
/**
* Parse one or more items and return them as array
* @param Database_Result
* @param boolean
* @return array
*/
protected function parseArticles(Database_Result $objArticles, $blnAddArchive=false)
{
if ($objArticles->numRows < 1)
{
return array();
}
global $objPage;
$this->import('String');
$arrArticles = array();
$limit = $objArticles->numRows;
$count = 0;
$imgSize = false;
// Override the default image size
if ($this->imgSize != '')
{
$size = deserialize($this->imgSize);
if ($size[0] > 0 || $size[1] > 0)
{
$imgSize = $this->imgSize;
}
}
while ($objArticles->next())
{
$objTemplate = new FrontendTemplate($this->news_template);
$objTemplate->setData($objArticles->row());
$objTemplate->count = ++$count;
$objTemplate->class = (($objArticles->cssClass != '') ? ' ' . $objArticles->cssClass : '') . (($count == 1) ? ' first' : '') . (($count == $limit) ? ' last' : '') . ((($count % 2) == 0) ? ' odd' : ' even');
$objTemplate->newsHeadline = $objArticles->headline;
$objTemplate->subHeadline = $objArticles->subheadline;
$objTemplate->hasSubHeadline = $objArticles->subheadline ? true : false;
$objTemplate->linkHeadline = $this->generateLink($objArticles->headline, $objArticles, $blnAddArchive);
$objTemplate->more = $this->generateLink($GLOBALS['TL_LANG']['MSC']['more'], $objArticles, $blnAddArchive, true);
$objTemplate->link = $this->generateNewsUrl($objArticles, $blnAddArchive);
$objTemplate->archive = $objArticles->archive;
// Clean the RTE output
if ($objArticles->teaser != '')
{
if ($objPage->outputFormat == 'xhtml')
{
$objArticles->teaser = $this->String->toXhtml($objArticles->teaser);
}
else
{
$objArticles->teaser = $this->String->toHtml5($objArticles->teaser);
}
$objTemplate->teaser = $this->String->encodeEmail($objArticles->teaser);
}
// Display the "read more" button for external/article links
if (($objArticles->source == 'external' || $objArticles->source == 'article') && $objArticles->text == '')
{
$objTemplate->text = true;
}
// Encode e-mail addresses
else
{
// Clean the RTE output
if ($objPage->outputFormat == 'xhtml')
{
$objArticles->text = $this->String->toXhtml($objArticles->text);
}
else
{
$objArticles->text = $this->String->toHtml5($objArticles->text);
}
$objTemplate->text = $this->String->encodeEmail($objArticles->text);
}
$arrMeta = $this->getMetaFields($objArticles);
// Add meta information
$objTemplate->date = $arrMeta['date'];
$objTemplate->hasMetaFields = !empty($arrMeta);
$objTemplate->numberOfComments = $arrMeta['ccount'];
$objTemplate->commentCount = $arrMeta['comments'];
$objTemplate->timestamp = $objArticles->date;
$objTemplate->author = $arrMeta['author'];
$objTemplate->datetime = date('Y-m-d\TH:i:sP', $objArticles->date);
$objTemplate->addImage = false;
// Add an image
if ($objArticles->addImage && is_file(TL_ROOT . '/' . $objArticles->singleSRC))
{
//.........这里部分代码省略.........
示例7: sendNewsletter
/**
* Compile the newsletter and send it
* @param object
* @param object
* @param array
* @param string
* @param string
* @param string
* @return string
*/
protected function sendNewsletter(Email $objEmail, Database_Result $objNewsletter, $arrRecipient, $text, $html, $css)
{
// Prepare text content
$objEmail->text = $this->parseSimpleTokens($text, $arrRecipient);
// Add HTML content
if (!$objNewsletter->sendText) {
// Get the mail template
$objTemplate = new BackendTemplate(strlen($objNewsletter->template) ? $objNewsletter->template : 'mail_default');
$objTemplate->setData($objNewsletter->row());
$objTemplate->title = $objNewsletter->subject;
$objTemplate->body = $this->parseSimpleTokens($html, $arrRecipient);
$objTemplate->charset = $GLOBALS['TL_CONFIG']['characterSet'];
$objTemplate->css = $css;
// Parse template
$objEmail->html = $objTemplate->parse();
$objEmail->imageDir = TL_ROOT . '/';
}
// Deactivate invalid addresses
try {
$objEmail->sendTo($arrRecipient['email']);
} catch (Swift_RfcComplianceException $e) {
$_SESSION['REJECTED_RECIPIENTS'][] = $arrRecipient['email'];
}
// Rejected recipients
if (count($objEmail->failures)) {
$_SESSION['REJECTED_RECIPIENTS'][] = $arrRecipient['email'];
}
}
示例8: addDataRow
/**
* Add a data row to the XML document
* @param DOMDocument
* @param DOMElement
* @param Database_Result
*/
protected function addDataRow(DOMDocument $xml, DOMElement $table, Database_Result $objData)
{
$row = $xml->createElement('row');
$row = $table->appendChild($row);
foreach ($objData->row() as $k=>$v)
{
$field = $xml->createElement('field');
$field->setAttribute('name', $k);
$field = $row->appendChild($field);
if ($v === null)
{
$v = 'NULL';
}
$value = $xml->createTextNode($v);
$value = $field->appendChild($value);
}
}
示例9: sendNewsletter
/**
* Compile the newsletter and send it
* @param \Email
* @param \Database_Result
* @param array
* @param string
* @param string
* @param string
* @return string
*/
protected function sendNewsletter(\Email $objEmail, \Database_Result $objNewsletter, $arrRecipient, $text, $html, $css = null)
{
// Prepare the text content
$objEmail->text = \String::parseSimpleTokens($text, $arrRecipient);
// Add the HTML content
if (!$objNewsletter->sendText) {
// Default template
if ($objNewsletter->template == '') {
$objNewsletter->template = 'mail_default';
}
// Load the mail template
$objTemplate = new \BackendTemplate($objNewsletter->template);
$objTemplate->setData($objNewsletter->row());
$objTemplate->title = $objNewsletter->subject;
$objTemplate->body = \String::parseSimpleTokens($html, $arrRecipient);
$objTemplate->charset = $GLOBALS['TL_CONFIG']['characterSet'];
$objTemplate->css = $css;
// Backwards compatibility
// Parse template
$objEmail->html = $objTemplate->parse();
$objEmail->imageDir = TL_ROOT . '/';
}
// Deactivate invalid addresses
try {
$objEmail->sendTo($arrRecipient['email']);
} catch (Swift_RfcComplianceException $e) {
$_SESSION['REJECTED_RECIPIENTS'][] = $arrRecipient['email'];
}
// Rejected recipients
if ($objEmail->hasFailures()) {
$_SESSION['REJECTED_RECIPIENTS'][] = $arrRecipient['email'];
}
}
示例10: addEvent
/**
* Add an event to the array of active events
* @param Database_Result
* @param integer
* @param integer
* @param string
* @param integer
* @param integer
* @param integer
*/
protected function addEvent(Database_Result $objEvents, $intStart, $intEnd, $strUrl, $intBegin, $intLimit, $intCalendar)
{
global $objPage;
$intDate = $intStart;
$intKey = date('Ymd', $intStart);
$span = Calendar::calculateSpan($intStart, $intEnd);
$strDate = $this->parseDate($objPage->dateFormat, $intStart);
$strDay = $GLOBALS['TL_LANG']['DAYS'][date('w', $intStart)];
$strMonth = $GLOBALS['TL_LANG']['MONTHS'][date('n', $intStart) - 1];
if ($span > 0) {
$strDate = $this->parseDate($objPage->dateFormat, $intStart) . ' - ' . $this->parseDate($objPage->dateFormat, $intEnd);
$strDay = '';
}
$strTime = '';
if ($objEvents->addTime) {
if ($span > 0) {
$strDate = $this->parseDate($objPage->datimFormat, $intStart) . ' - ' . $this->parseDate($objPage->datimFormat, $intEnd);
} elseif ($intStart == $intEnd) {
$strTime = $this->parseDate($objPage->timeFormat, $intStart);
} else {
$strTime = $this->parseDate($objPage->timeFormat, $intStart) . ' - ' . $this->parseDate($objPage->timeFormat, $intEnd);
}
}
// Store raw data
$arrEvent = $objEvents->row();
// Overwrite some settings
$arrEvent['time'] = $strTime;
$arrEvent['date'] = $strDate;
$arrEvent['day'] = $strDay;
$arrEvent['month'] = $strMonth;
$arrEvent['parent'] = $intCalendar;
$arrEvent['link'] = $objEvents->title;
$arrEvent['target'] = '';
$arrEvent['title'] = specialchars($objEvents->title, true);
$arrEvent['href'] = $this->generateEventUrl($objEvents, $strUrl);
$arrEvent['class'] = $objEvents->cssClass != '' ? ' ' . $objEvents->cssClass : '';
$arrEvent['details'] = $this->String->encodeEmail($objEvents->details);
$arrEvent['start'] = $intStart;
$arrEvent['end'] = $intEnd;
// Override the link target
if ($objEvents->source == 'external' && $objEvents->target) {
$arrEvent['target'] = $objPage->outputFormat == 'xhtml' ? ' onclick="return !window.open(this.href)"' : ' target="_blank"';
}
// Clean the RTE output
if ($arrEvent['teaser'] != '') {
if ($objPage->outputFormat == 'xhtml') {
$arrEvent['teaser'] = $this->String->toXhtml($arrEvent['teaser']);
} else {
$arrEvent['teaser'] = $this->String->toHtml5($arrEvent['teaser']);
}
}
// Display the "read more" button for external/article links
if ($objEvents->source != 'default' && $objEvents->details == '') {
$arrEvent['details'] = true;
} else {
if ($objPage->outputFormat == 'xhtml') {
$arrEvent['details'] = $this->String->toXhtml($arrEvent['details']);
} else {
$arrEvent['details'] = $this->String->toHtml5($arrEvent['details']);
}
}
// Get todays start and end timestamp
if ($this->intTodayBegin === null) {
$this->intTodayBegin = strtotime('00:00:00');
}
if ($this->intTodayEnd === null) {
$this->intTodayEnd = strtotime('23:59:59');
}
// Mark past and upcoming events (see #3692)
if ($intEnd < $this->intTodayBegin) {
$arrEvent['class'] .= ' bygone';
} elseif ($intStart > $this->intTodayEnd) {
$arrEvent['class'] .= ' upcoming';
} else {
$arrEvent['class'] .= ' current';
}
$this->arrEvents[$intKey][$intStart][] = $arrEvent;
// Multi-day event
for ($i = 1; $i <= $span && $intDate <= $intLimit; $i++) {
// Only show first occurrence
if ($this->cal_noSpan && $intDate >= $intBegin) {
break;
}
$intDate = strtotime('+ 1 day', $intDate);
$intNextKey = date('Ymd', $intDate);
$this->arrEvents[$intNextKey][$intDate][] = $arrEvent;
}
}
示例11: getRows
/**
* Get rows
*
* @param \Database_Result $objRecords
*
* @return array
*/
public function getRows($objRecords)
{
if (!$objRecords->numRows) {
return array();
}
$arrRows = array();
$objRecords->reset();
while ($objRecords->next()) {
$arrField = $objRecords->row();
foreach ($this->fields as $field) {
$arrField[$field] = Format::dcaValue($this->foreignTable, $field, $objRecords->{$field});
}
$arrRows[] = $arrField;
}
return $arrRows;
}
示例12: foreach
function __construct(Database_Result $resultSet = null)
{
foreach ($resultSet->row() as $name => $value) {
$this->{$name} = $value;
}
}
示例13: parseArticles
/**
* Parse one or more items and return them as array
*
* @param Database_Result $objArticles
* @param bool|Template $objTemplate
* @return array
*/
protected function parseArticles(Database_Result $objArticles, $objTemplate = false)
{
if ($objArticles->numRows < 1) {
return array();
}
global $objPage;
$this->import('String');
$this->import('News4wardHelper');
$arrArticles = array();
$limit = $objArticles->numRows;
$count = 0;
while ($objArticles->next()) {
// init FrontendTemplate if theres no object given
if (!$objTemplate) {
$objTemplate = new FrontendTemplate($this->news4ward_template);
}
$objTemplate->setData($objArticles->row());
$objTemplate->count = ++$count;
$objTemplate->class = (strlen($objArticles->cssClass) ? ' ' . $objArticles->cssClass : '') . ($count == 1 ? ' first' : '') . ($count == $limit ? ' last' : '') . ($count % 2 == 0 ? ' odd' : ' even') . ($objArticles->highlight ? ' highlight' : '');
$objTemplate->link = $this->News4wardHelper->generateUrl($objArticles);
$objTemplate->archive = $objArticles->archive;
// Clean the RTE output for the TEASER
if ($objArticles->teaser != '') {
if ($objPage->outputFormat == 'xhtml') {
$objArticles->teaser = $this->String->toXhtml($objArticles->teaser);
} else {
$objArticles->teaser = $this->String->toHtml5($objArticles->teaser);
}
$objTemplate->teaser = $this->String->encodeEmail($objArticles->teaser);
}
// Generate ContentElements
$objContentelements = $this->Database->prepare('SELECT id FROM tl_content WHERE pid=? AND do="news4ward" ' . (!BE_USER_LOGGED_IN ? " AND invisible=''" : "") . ' ORDER BY sorting ')->execute($objArticles->id);
$strContent = '';
while ($objContentelements->next()) {
$strContent .= $this->getContentElement($objContentelements->id);
}
// Clean the RTE output for the CONTENT
if ($strContent != '') {
// Clean the RTE output
if ($objPage->outputFormat == 'xhtml') {
$strContent = $this->String->toXhtml($strContent);
} else {
$strContent = $this->String->toHtml5($strContent);
}
$strContent = $this->String->encodeEmail($strContent);
}
$objTemplate->content = $strContent;
// Add meta information
$arrMeta = $this->getMetaFields($objArticles);
$objTemplate->date = $arrMeta['date'];
$objTemplate->hasMetaFields = count($arrMeta) ? true : false;
$objTemplate->timestamp = $objArticles->start;
$objTemplate->author = $arrMeta['author'];
$objTemplate->datetime = date('Y-m-d\\TH:i:sP', $objArticles->start);
// Add teaser image
if ($objArticles->teaserImage && is_file(TL_ROOT . '/' . $objArticles->teaserImage)) {
$imgSize = deserialize($this->imgSize, true);
$objTemplate->arrSize = $imgSize;
if (count($imgSize) > 1) {
$objTemplate->teaserImage = $this->getImage($objArticles->teaserImage, $imgSize[0], $imgSize[1], $imgSize[2]);
} else {
$objTemplate->teaserImage = $objArticles->teaserImage;
}
$objTemplate->teaserImageRaw = $objTemplate->teaserImag;
}
// HOOK: add custom logic
if (isset($GLOBALS['TL_HOOKS']['News4wardParseArticle']) && is_array($GLOBALS['TL_HOOKS']['News4wardParseArticle'])) {
foreach ($GLOBALS['TL_HOOKS']['News4wardParseArticle'] as $callback) {
$this->import($callback[0]);
$this->{$callback}[0]->{$callback}[1]($this, $objArticles, $objTemplate);
}
}
$arrArticles[] = $objTemplate->parse();
}
return $arrArticles;
}
示例14: setFromRow
/**
* Set the current record from a database result row
* @param Database_Result
* @param string
* @param string
*/
public function setFromRow(Database_Result $resResult, $strTable, $strRefField)
{
$this->strTable = $strTable;
$this->strRefField = $strRefField;
$this->varRefId = $resResult->{$strRefField};
$this->resResult = $resResult;
$this->arrData = $resResult->row();
$this->blnRecordExists = true;
}