本文整理汇总了PHP中EmailMessage::GetSelectFields方法的典型用法代码示例。如果您正苦于以下问题:PHP EmailMessage::GetSelectFields方法的具体用法?PHP EmailMessage::GetSelectFields怎么用?PHP EmailMessage::GetSelectFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EmailMessage
的用法示例。
在下文中一共展示了EmailMessage::GetSelectFields方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: BuildQueryStatement
/**
* Internally called method to assist with calling Qcodo Query for this class
* on load methods.
* @param QQueryBuilder &$objQueryBuilder the QueryBuilder object that will be created
* @param QQCondition $objConditions any conditions on the query, itself
* @param QQClause[] $objOptionalClauses additional optional QQClause object or array of QQClause objects for this query
* @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with (sending in null will skip the PrepareStatement step)
* @param boolean $blnCountOnly only select a rowcount
* @return string the query statement
*/
protected static function BuildQueryStatement(&$objQueryBuilder, QQCondition $objConditions, $objOptionalClauses, $mixParameterArray, $blnCountOnly)
{
// Get the Database Object for this Class
$objDatabase = EmailMessage::GetDatabase();
// Create/Build out the QueryBuilder object with EmailMessage-specific SELET and FROM fields
$objQueryBuilder = new QQueryBuilder($objDatabase, 'email_message');
EmailMessage::GetSelectFields($objQueryBuilder);
$objQueryBuilder->AddFromItem('email_message');
// Set "CountOnly" option (if applicable)
if ($blnCountOnly) {
$objQueryBuilder->SetCountOnlyFlag();
}
// Apply Any Conditions
if ($objConditions) {
try {
$objConditions->UpdateQueryBuilder($objQueryBuilder);
} catch (QCallerException $objExc) {
$objExc->IncrementOffset();
throw $objExc;
}
}
// Iterate through all the Optional Clauses (if any) and perform accordingly
if ($objOptionalClauses) {
if ($objOptionalClauses instanceof QQClause) {
$objOptionalClauses->UpdateQueryBuilder($objQueryBuilder);
} else {
if (is_array($objOptionalClauses)) {
foreach ($objOptionalClauses as $objClause) {
$objClause->UpdateQueryBuilder($objQueryBuilder);
}
} else {
throw new QCallerException('Optional Clauses must be a QQClause object or an array of QQClause objects');
}
}
}
// Get the SQL Statement
$strQuery = $objQueryBuilder->GetStatement();
// Prepare the Statement with the Query Parameters (if applicable)
if ($mixParameterArray) {
if (is_array($mixParameterArray)) {
if (count($mixParameterArray)) {
$strQuery = $objDatabase->PrepareStatement($strQuery, $mixParameterArray);
}
// Ensure that there are no other Unresolved Named Parameters
if (strpos($strQuery, chr(QQNamedValue::DelimiterCode) . '{') !== false) {
throw new QCallerException('Unresolved named parameters in the query');
}
} else {
throw new QCallerException('Parameter Array must be an array of name-value parameter pairs');
}
}
// Return the Objects
return $strQuery;
}