PHP中的自动重新初始化

时间:2016-06-21 10:10:29

标签: php yii2

我正在写一个简单的游戏页面。

在我的控制器中,该方法如下所示:

ppublic function actionGame143(){

    $model = new Game143();
    $level = 1;
    $numEx = 10;

    if ($model->load(Yii::$app->request->post()) && $model->validate()) {
        $model->verifyAnswers($numEx);
        return $this->render('Game143-confirm', ['model' => $model]);
    } else {
        $model->initGame($level, $numEx);
        return $this->render('Game143', ['model' => $model]);
    }

}

所以$numEx是可以播放的最高级别,level是起始级别。

在我的模型中,我使用initGame($level, $numEx)保存了它们:

public function initGame($level, $numEx) {
    $this->maxLevel = $numEx; // normally 10
    $this->thisLevel = $level; //normally 1

那么为什么我需要再次verifyAnswer() $numEx?如果我不这样做,变量设置为NULL或我在模型中定义的初始化? 通常它应该保存为$thisLevel

在我的视图类中,我只使用最大的变量进行for循环,直到它工作正常:

for($model->thisLevel = 1; $model->thisLevel <= $model->maxLevel; $model->thisLevel++) {...}

在结束时,我提交了一个按钮。$out .= Html::submitButton('Korrigieren', ['class' => 'btn btn-primary']);

不知道为什么它被设置为NULL值或初始值?

由于与其他程序员的接口,我无法再次向verifyAnswer()我的$numEx提供。

我正在使用yii2。如果我将值设置为required,我甚至无法提交。

0 个答案:

没有答案