首页  >  问答  >  正文

为什么会页面提示未定义变量ImgList

根据老师的gradeList修改的

public function  imgList()
{
   $Image = img_tb::all();

   $count = img_tb::count();

   foreach ($Image as $value) {
       $data = [
           'id' => $value->id,
           'name' => $value->name,
           'img' => $value->img,
           'update_time' => $value->update_time,
       ];
   $ImgList[] = $data;
}
   $this->view->assign('imgList',$ImgList);
   $this->view->assign('count',$count);
   //渲染图片列表模板
   return $this -> fetch('img_list');
}

JerryJerry2478 天前2021

全部回复(8)我来回复

  • 宇瞳

    宇瞳2018-05-10 10:48:18

    在foreach前定义下$i=0;


    $ImgList[$i] = $data;

    $i++;

    即可

    回复
    0
  • 宇瞳

    前面再加个 $ImgList=array();

    宇瞳 · 2018-05-10 23:53:02
  • 韦小宝

    韦小宝2018-01-30 09:10:53

    那你就试试先在前面声明一下这个变量,赋值为空。

    回复
    0
  • Jerry

    的确不报错了,可是不能页面显示不出数据库数据

    Jerry · 2018-01-30 13:38:06
    Jerry

    读出来的变量,输出的数组为空

    Jerry · 2018-01-30 13:41:55
    Jerry

    foreach ($Image as $value) { $data = [ 'id' => $value->id, 'name' => $value->name, 'img' => $value->img, 'create_time' => $value->create_time, 'update_time' => $value->update_time, ]; $imgList[] = $data; dump($data); } 我是这样输出的,请问在哪里看输出结果

    Jerry · 2018-01-30 14:01:16
    韦小宝

    你打印那变量看看有没有值

    韦小宝 · 2018-01-30 13:40:42
    韦小宝

    你打印一下$data看看,有没有值,对了你这个$ImgList等于空最好放在方法最前部

    韦小宝 · 2018-01-30 13:43:06
  • 取消回复