QQNode::GetValue PHP Метод

GetValue() публичный Метод

public GetValue ( mixed $mixValue, QQueryBuilder $objBuilder, $blnEqualityType = null ) : string
$mixValue mixed
$objBuilder QQueryBuilder
Результат string
    public function GetValue($mixValue, QQueryBuilder $objBuilder, $blnEqualityType = null)
    {
        if ($mixValue instanceof QQNamedValue) {
            return $mixValue->Parameter($blnEqualityType);
        }
        if ($mixValue instanceof QQNode) {
            if (is_null($blnEqualityType)) {
                $strToReturn = '';
            } else {
                if ($blnEqualityType) {
                    $strToReturn = '= ';
                } else {
                    $strToReturn = '!= ';
                }
            }
            try {
                return $strToReturn . $mixValue->GetColumnAlias($objBuilder);
            } catch (QCallerException $objExc) {
                $objExc->IncrementOffset();
                throw $objExc;
            }
        } else {
            if (is_null($blnEqualityType)) {
                $blnIncludeEquality = false;
                $blnReverseEquality = false;
            } else {
                $blnIncludeEquality = true;
                if ($blnEqualityType) {
                    $blnReverseEquality = false;
                } else {
                    $blnReverseEquality = true;
                }
            }
            //				try {
            //					return $objBuilder->Database->SqlVariable(QType::Cast($mixValue, $this->_Type), $blnIncludeEquality, $blnReverseEquality);
            //				} catch (QCallerException $objExc) {
            //					$objExc->IncrementOffset();
            //					$objExc->IncrementOffset();
            //					throw $objExc;
            //				}
            return $objBuilder->Database->SqlVariable($mixValue, $blnIncludeEquality, $blnReverseEquality);
        }
    }

Usage Example

Пример #1
0
 /**
  * @param QQueryBuilder $objBuilder
  * @throws Exception
  * @throws QCallerException
  */
 public function UpdateQueryBuilder(QQueryBuilder $objBuilder)
 {
     $objBuilder->AddWhereItem($this->objQueryNode->GetColumnAlias($objBuilder) . ' ' . QQNode::GetValue($this->mixOperand, $objBuilder, false));
 }