Controller_Data_Array::save PHP Méthode

save() public méthode

public save ( $model, $id, $data )
    public function save($model, $id, $data)
    {
        $oldId = $id;
        if (is_null($id)) {
            // insert
            $newId = $data[$model->id_field] ?: $this->generateNewId($model);
            if (isset($model->_table[$this->short_name][$newId])) {
                throw $this->exception('This id is already used. Load the model before')->addMoreInfo('id', $data[$model->id_field]);
            }
        } else {
            // update
            //unset($model->_table[$this->short_name][$oldId]);
            $newId = $id;
            //$data[$model->id_field];
            $data = array_merge($model->_table[$this->short_name][$newId], $data);
        }
        $data[$model->id_field] = $newId;
        $model->_table[$this->short_name][$newId] = $data;
        $model->data = $data;
        return $newId;
    }