Upload :: beforeSave()声明应该与Model :: beforeSave兼容($ options = Array)[APP/Model/Upload.php,第5行]

Inv*_*tax 6 cakephp model cakephp-2.0

在我的上传模型中使用beforeSave方法时,我在页面顶部显示以下错误.

严格(2048):上传声明:: beforeSave()应该与Model :: beforeSave兼容($ options = Array)[APP/Model/Upload.php,第5行]

有人能指出我做错了什么吗?

这是我的模型:

<?php 

App::uses('AppModel', 'Model');

class Upload extends AppModel {

    protected function _processFile() {
        $file = $this->data['Upload']['file'];
        if ($file['error'] === UPLOAD_ERR_OK) {
            $name = md5($file['name']);
            $path = WWW_ROOT . 'files' . DS . $name;
            if (is_uploaded_file($file['tmp_name'])
                && move_uploaded_file($file['tmp_name'], $path) ) {
                $this->data['Upload']['name'] = $file['name'];
                $this->data['Upload']['size'] = $file['size'];
                $this->data['Upload']['mime'] = $file['type'];
                $this->data['Upload']['path'] = '/files/' . $name;
                unset($this->data['Upload']['file']);
                return true;
            }
        }
        return false;
    }

    public function beforeSave() {
        if (!parent::beforeSave($options)) {
            return false;
        }
        return $this->_processFile();
    }

}

?>
Run Code Online (Sandbox Code Playgroud)

小智 13

只需改变这一行

public function beforeSave() {
Run Code Online (Sandbox Code Playgroud)

对此,你有正确的方法声明

public function beforeSave($options = array()) {
Run Code Online (Sandbox Code Playgroud)