示例#1
0
 protected function update()
 {
     $class = LateBinding::getCalledClass();
     $primaryKey = call_user_func(array($class, 'primaryKey'));
     $fields = call_user_func(array($class, 'properties'));
     $field_holderPair = array();
     foreach ($fields as $f) {
         if (in_array($f, $primaryKey)) {
             continue;
         }
         $field_holderPair[] = sprintf('%s = :%s', DB::quoteIdentifier($f), $f);
     }
     $condition = array();
     foreach ($primaryKey as $pk) {
         $condition[] = sprintf('%s = :%s', DB::quoteIdentifier($pk), $pk);
     }
     $sql = 'UPDATE ' . DB::quoteIdentifier($this->tableName()) . ' ';
     $sql .= 'SET ';
     $sql .= implode(',', $field_holderPair) . ' ';
     $sql .= 'WHERE ';
     $sql .= implode(' AND ', $condition);
     $result = DB::query($sql, $this->_data);
     if ($result === false or $result !== 1) {
     }
 }
示例#2
0
 public function callme()
 {
     return LateBinding::getCalledClass();
 }