Exemple #1
0
 /**
  * general type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (is_null($value)) {
         return null;
     }
     switch ($type) {
         case 'date':
             return substr($value, 0, strlen('YYYY-MM-DD'));
         case 'time':
             return substr($value, strlen('YYYY-MM-DD '), strlen('HH:MI:SS'));
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
 /**
  * General type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (is_null($value)) {
         return null;
     }
     $db =& $this->getDBInstance();
     if (PEAR::isError($db)) {
         return $db;
     }
     switch ($type) {
         case 'timestamp':
             return substr($value, 0, strlen('YYYY-MM-DD HH:MM:SS'));
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
Exemple #3
0
 /**
  * general type conversion method
  *
  * @param mixed $value refernce to a value to be converted
  * @param string $type specifies which type to convert to
  * @param string $rtrim if text should be rtrimmed
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (null === $value) {
         return null;
     }
     switch ($type) {
         case 'boolean':
             return $value == 'T';
         case 'time':
             if ($value[0] == '+') {
                 return substr($value, 1);
             } else {
                 return $value;
             }
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
Exemple #4
0
 /**
  * general type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (null === $value) {
         return null;
     }
     switch ($type) {
         case 'boolean':
             return $value == '1';
         case 'date':
             if (strlen($value) > 10) {
                 $value = substr($value, 0, 10);
             }
             return $value;
         case 'time':
             if (strlen($value) > 8) {
                 $value = substr($value, 11, 8);
             }
             return $value;
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
 /**
  * General type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  */
 protected function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (null === $value) {
         return null;
     }
     switch ($type) {
         case 'boolean':
             return $value == 'f' ? false : !empty($value);
         case 'float':
             return doubleval($value);
         case 'date':
             return $value;
         case 'time':
             return substr($value, 0, strlen('HH:MM:SS'));
         case 'timestamp':
             return substr($value, 0, strlen('YYYY-MM-DD HH:MM:SS'));
         case 'blob':
             $value = pg_unescape_bytea($value);
             return parent::_baseConvertResult($value, $type, $rtrim);
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
Exemple #6
0
 /**
  * general type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (null === $value) {
         return null;
     }
     switch ($type) {
         case 'text':
             if (is_object($value) && is_a($value, 'OCI-Lob')) {
                 //LOB => fetch into variable
                 $clob = $this->_baseConvertResult($value, 'clob', $rtrim);
                 if (!PEAR::isError($clob) && is_resource($clob)) {
                     $clob_value = '';
                     while (!feof($clob)) {
                         $clob_value .= fread($clob, 8192);
                     }
                     $this->destroyLOB($clob);
                 }
                 $value = $clob_value;
             }
             if ($rtrim) {
                 $value = rtrim($value);
             }
             return $value;
         case 'date':
             return substr($value, 0, strlen('YYYY-MM-DD'));
         case 'time':
             return substr($value, strlen('YYYY-MM-DD '), strlen('HH:MI:SS'));
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }
Exemple #7
0
 /**
  * General type conversion method
  *
  * @param mixed   $value refernce to a value to be converted
  * @param string  $type  specifies which type to convert to
  * @param boolean $rtrim [optional] when TRUE [default], apply rtrim() to text
  * @return object a MDB2 error on failure
  * @access protected
  */
 function _baseConvertResult($value, $type, $rtrim = true)
 {
     if (null === $value) {
         return null;
     }
     $db = $this->getDBInstance();
     if (MDB2::isError($db)) {
         return $db;
     }
     $connection = $db->getConnection();
     if (MDB2::isError($connection)) {
         return $connection;
     }
     switch ($type) {
         case 'text':
             $blob_info = @ibase_blob_info($connection, $value);
             if (is_array($blob_info) && $blob_info['length'] > 0) {
                 //LOB => fetch into variable
                 $clob = $this->_baseConvertResult($value, 'clob', $rtrim);
                 if (!MDB2::isError($clob) && is_resource($clob)) {
                     $clob_value = '';
                     while (!feof($clob)) {
                         $clob_value .= fread($clob, 8192);
                     }
                     $this->destroyLOB($clob);
                 }
                 $value = $clob_value;
             }
             if ($rtrim) {
                 $value = rtrim($value);
             }
             return $value;
         case 'timestamp':
             return substr($value, 0, strlen('YYYY-MM-DD HH:MM:SS'));
     }
     return parent::_baseConvertResult($value, $type, $rtrim);
 }