Php 为foreach()错误提供的参数无效,无法在视图中找到第二个模型
我在yii2中有这个错误Php 为foreach()错误提供的参数无效,无法在视图中找到第二个模型,php,yii2,Php,Yii2,我在yii2中有这个错误 Invalid argument supplied for foreach() 我的视图看不到我的第二个模型,我使用了渲染功能 在我看来,我使用这样的模型 <?= $form->field($images, 'imagesFiles[]')->fileInput(['multiple' => true, 'accept' => 'image/*','id'=>'gallery-photo-add'])->label(false
Invalid argument supplied for foreach()
我的视图看不到我的第二个模型,我使用了渲染功能
在我看来,我使用这样的模型
<?= $form->field($images, 'imagesFiles[]')->fileInput(['multiple' => true, 'accept' => 'image/*','id'=>'gallery-photo-add'])->label(false) ?>
但在我看来,我从PHPStorm得到了一些提示:
未定义变量“images”
我有每一个导致错误的地方
public function upload($model){
$model->imagesFiles = UploadedFile::getInstances($model,'imagesFiles');
foreach($model->imagesFiles as $file){
$folder = ('uploads/' . $file->baseName . '.' . $file->extension);
$file->saveAs('uploads/' . $file->baseName . '.' . $file->extension);
$model->image_1.=$folder . ';';
}
return $model->save(false);
}
只有在视图文件中描述变量时,PhpStorm才会看到该变量,如:
<?php
use foo\Images;
/* @var Images $images */
// $images is defined for PhpStorm
在每次调用前检查变量类型。您的代码不够。。不清楚您在哪里调用upload$model函数,然后这个$model的真正内容是什么
<?php
use foo\Images;
/* @var Images $images */
// $images is defined for PhpStorm
var_dump($images)