コード例 #1
0
ファイル: Variable.class.php プロジェクト: qcodo/qcodo-api
 public static function CreateNewForName($strName, $strVersion)
 {
     $objVariable = new Variable();
     $objVariable->Name = $strName;
     $objVariable->VariableTypeId = VariableType::Unknown;
     switch (substr($strName, 0, 3)) {
         case 'str':
             $objVariable->VariableTypeId = VariableType::String;
             break;
         case 'obj':
             $objVariable->VariableTypeId = VariableType::Object;
             break;
         case 'int':
             $objVariable->VariableTypeId = VariableType::Integer;
             break;
         case 'bln':
             $objVariable->VariableTypeId = VariableType::Boolean;
             break;
         case 'mix':
             $objVariable->VariableTypeId = VariableType::Mixed;
             break;
         case 'dtt':
             $objVariable->VariableTypeId = VariableType::QDateTime;
             break;
         case 'flt':
             $objVariable->VariableTypeId = VariableType::Float;
             break;
     }
     $objVariable->FirstVersion = $strVersion;
     if (strpos(strtolower($strName), 'array') !== false) {
         $objVariable->ArrayFlag = true;
     }
     $objVariable->Save();
     return $objVariable;
 }
コード例 #2
0
 public static function RestoreByNameForClass($strName, $intClassId, $strVersion, $objFile)
 {
     $objConstant = QcodoConstant::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::QcodoConstant()->QcodoClassId, $intClassId), QQ::Equal(QQN::QcodoConstant()->Variable->Name, $strName)));
     if (!$objConstant) {
         $objVariable = new Variable();
         $objVariable->Name = $strName;
         $objVariable->VariableTypeId = VariableType::String;
         $objVariable->FirstVersion = $strVersion;
         $objVariable->Save();
         $objConstant = new QcodoConstant();
         $objConstant->Variable = $objVariable;
         $objConstant->File = $objFile;
         $objConstant->QcodoClassId = $intClassId;
         $objConstant->Save();
     } else {
         if ($objConstant->Variable->LastVersion) {
             $objConstant->Variable->LastVersion = null;
             $objConstant->Variable->Save();
         }
         if ($objFile->Id != $objConstant->intFileId) {
             $objConstant->File = $objFile;
             $objConstant->Save();
         }
     }
     return $objConstant;
 }