TP5 未定义数组索引:child

来源:互联网 发布:安卓gal软件 编辑:程序博客网 时间:2024/06/14 11:45
{volist name="navData" id="vo"}<div>    <h3>{$vo.cat_name}</h3>    <div>        {volist name="vo.child" id="vi"}        <dl>            <dt>{$vi.cat_name}</dt>            <dd>                {volist name="vi.child" id="vp"}                {$vp.cat_name}                {/volist}            </dd>        </dl>        {/volist}    </div></div>{/volist}

原因是某些数组没有child字段
解决办法 :加个判断 如果没有child字段 就赋予其空值

public function getNavData()    {        $return = array();        $allData = db('category')->select();        foreach ($allData as $k => $v)        {            if ($v['pid'] == 0)            {                if (!isset($v['child'])){                    $v['child'] = array();                }                foreach ($allData as $k1 => $v1)                {                    if ($v1['pid'] == $v['id'])                    {                        if (!isset($v1['child']))                        {                            $v1['child'] = array();                        }                        foreach ($allData as $k2 => $v2)                        {                            if ($v2['pid'] == $v1['id'])                            {                                $v1['child'][] = $v2;                            }                        }                        $v['child'][] = $v1;                    }                }                $return[] = $v;            }        }        return $return;    }

PS : tp5中通过模型select返回的是对象 通过db select返回的是数组

原创粉丝点击