Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在yii中将数组分配给$model_Php_Arrays_Yii - Fatal编程技术网

Php 如何在yii中将数组分配给$model

Php 如何在yii中将数组分配给$model,php,arrays,yii,Php,Arrays,Yii,对不起。我缩短了我的问题,因为我认为,那些在YII上工作的用户可以很容易地理解我的问题,但是现在我正在修改,所以你可以很容易地理解。 我想通过单个控制器/视图一次更新两个不同的表 \u form.php(更新表单) 现在我想把这个变量,即$trans分配给yii framework的_form.php文件中的$model,这样我就可以轻松地在controller上访问它,然后轻松地将它提交到单独的表中。 我还想在textArea中使用它 希望你能理解我的问题 任何帮助都将不胜感激 谢谢。您不能将

对不起。我缩短了我的问题,因为我认为,那些在YII上工作的用户可以很容易地理解我的问题,但是现在我正在修改,所以你可以很容易地理解。 我想通过单个控制器/视图一次更新两个不同的表

\u form.php(更新表单)

现在我想把这个变量,即
$trans
分配给yii framework的_form.php文件中的
$model
,这样我就可以轻松地在controller上访问它,然后轻松地将它提交到单独的表中。 我还想在textArea中使用它

希望你能理解我的问题

任何帮助都将不胜感激


谢谢。

您不能将阵列从视图发送到控制器,但有一种方法(没有专业方法)可以发送:

将其放在视图中的会话中(\u表单):


最好在控制器本身中执行此类操作,而不是在视图中执行并将其传递给控制器

您不应该在视图文件中执行此任务,而应该在控制器中执行此任务,如

 public function actionCreate()
    {
    $model=new MODELNAME;
// your rest of code
    $trans = array();
    foreach($model->verseTranslations as $p)
    {
      $trans[$p->id] = $p->translation_text;
    }
    // and then you can send this variable to the view by rendering the view file
    $this->render('create',array('model'=>$model,'trans'=>$trans));
    }

像这样在模型上添加新属性

class YOUR_MODEL_WITH_TRANS extends ParentModel
{
    public $trans;
    ---
}
$model->trans=$trans;
转到视图文件并像这样轻松地分配它

class YOUR_MODEL_WITH_TRANS extends ParentModel
{
    public $trans;
    ---
}
$model->trans=$trans;

您希望在此阵列上执行什么操作i-e搜索或保存?您确切需要的功能是什么?我希望在控制器上保存或更新…答案相同。您不应该在_表单中执行它,而应该在控制器中执行它,然后您可以轻松地将它传递到创建或更新文件
 public function actionCreate()
    {
    $model=new MODELNAME;
// your rest of code
    $trans = array();
    foreach($model->verseTranslations as $p)
    {
      $trans[$p->id] = $p->translation_text;
    }
    // and then you can send this variable to the view by rendering the view file
    $this->render('create',array('model'=>$model,'trans'=>$trans));
    }
class YOUR_MODEL_WITH_TRANS extends ParentModel
{
    public $trans;
    ---
}
$model->trans=$trans;