tp5中用 foreach为什么报错 非法字符串偏移

HTML代码

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <title>教师管理</title>
</head>
<body>
<table>
    <tr>

        <th>姓名</th>

    </tr>

    <tr>
{foreach $row as $v}
        <td> {$v.name}</td>
        <td><a style="margin-right: 10px" href="{:url('Index/urlid')}?id={$v.id}">删除</a><a href="{:url('Index/cahkan')}?id={$v.id}">查看</a></td>
    </tr>
    <br/>
    {/foreach}
</table>

</body>
</html>

cahkan Html代码

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <title>教师管理</title>
</head>
<body>
<table>
    <tr>
        <th>序号</th>
        <th>姓名</th>
        <th>性别</th>
        <th>邮箱</th>
        <th>用户名</th>
        <th>操作</th>
    </tr>
    <tr>
        {foreach $row as $v}
        <td> {$v.name}</td>
        <td> {$v.sie}</td>
        <td> {$v.emli}</td>
        <td> {$v.usename}</td>
    {/foreach}
    </tr>
</table>

</body>
</html>

控制器代码

public function  biaodan(){

        $row=db('biaodan')->select();
        $this->assign('row',$row);
        return $this->fetch();
    }
    public function urlid(){
        $str=input('id');
        $row=db('biaodan')->where('id',$str)->delete();
        if($row>0){
            $this->error('操作成功','biaodan');
        }
    }
    public function cahkan(){
        $str1=input('id');
        echo $str1;
        $row=db('biaodan')->where('id',$str1)->find();
        $this->assign('row',$row);
        return $this->fetch();
    }

https://blog.csdn.net/haibo0668/article/details/78222945

很明显取出的$row是一维数组,foreach一般要求$row是二维数组,这里不需要foreach