foreach的使用,高维数组

foreach的使用,处理高维数组

public function show_list()
    {
        if ($this->is_token()!==1){
            return $this->is_token();
        }
        $index = Db::name($this->tableNameIndex)->select();
        $left = Db::name($this->tableNameleft)->select();

        $result = [];

        foreach ($index as $index1) {
            $id = $index1['id'];//每次循环就给id值给$id
            $indexItem = $index1;//创建数组并存储查到的数据
            $indexItem['child'] = [];//在这个数组插进去index_id这个字段,这里可以得到两个东西,一个是$id[],一个是indexItem['index_id']多了一个空字段的数据

            foreach ($left as $left1) {
                if ($left1['index_id'] == $id) {//if判断left数据字段的index_id是否等于上面传递到的
                    $indexItem['child'] = $left1;//将这个数组查到的一条数据插入这个数组中
                }
            }

            $result[] = $indexItem;
        }

        return json_encode($result);


    }

另一种用法

public function extt(){
        $nestedArray = [
            'name' => 'Alice',
            'age' => 25,
            'address' => [
                'city' => 'New York',
                'country' => 'USA'
            ],
            'hobbies' => ['reading', 'traveling']
        ];

        foreach ($nestedArray as $key => $value) {//$key是前面数组的键,$value是前面数组的值
            if (is_array($value)) {//判断这个值是否是数组
                echo "$key: ";//是的话先打印键
                foreach ($value as $subKey => $subValue) {//再将这个数组的值,相当于又是键值对,其中的键给$subkey,值给$subValue
                    echo "$subKey => $subValue, ";//这里再打印这里的键值对
                }
                echo "\n";//打印换行
            } else {
                echo "$key: $value\n";//打印键值对不是数组形式数据
            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值