zmxaple 2017-04-24 19:27:54 1978次浏览 2条回复 0 0 0

含错误代码的教程:

使用 Forms(Working with Forms)

错误代码:

<?php

namespace app\controllers;

use Yii;
use yii\web\Controller;
use app\models\EntryForm;

class SiteController extends Controller
{
    // ...现存的代码...

    public function actionEntry()
    {
        $model = new EntryForm;

        if ($model->load(Yii::$app->request->post()) && $model->validate()) {
            // 验证 $model 收到的数据

            // 做些有意义的事 ...

            return $this->render('entry-confirm', ['model' => $model]);
        } else {
            // 无论是初始化显示还是数据验证错误
            return $this->render('entry', ['model' => $model]);
        }
    }
}

中的$model = new EntryForm; 是否正确?如果正确,将会报错validate() 是未知方法。

本人仅凭一些粗浅的Java知识认为:

正确代码应改成如下:

...
$model = new EntryForm();
...
  • 回复于 2017-04-24 19:57 举报
    $model = new EntryForm; 
    $model = new EntryForm();
    

    这两种写法都是可以的,后面这个可以加初始化参数。PHP是弱类型语言,很弱很弱!

    1 条回复
    回复于 2017-04-24 20:18 回复

    但是会报错validate() 是未知方法啊,改为$model = new EntryForm();就不会报错了 ,顺便说下本人的PHP版本是7.0。

  • 回复于 2017-04-24 21:13 举报

    php7没用过,不清楚,我的是5.6

您需要登录后才可以回复。登录 | 立即注册