数组切片 php,php - PHP - 切片嵌套数组 - SO中文参考 - www.soinside.com

我有两个不同长度的嵌套数组,我想让第二个数组的长度与第一个数组的长度相同。我想让第二个数组的长度与第一个数组的长度相同,请看下面的例子。只需删除所有在第一个数组中不存在的项目。有时第二个数组的值比第一个数组多,这种情况下,我的树形结构就会被破坏,这些数组是嵌套数组,所以简单的array_slice是行不通的。

下面是数组的结构。第一个数组"1": {

"id": "1",

"username": "username",

"children": [

{

"id": "-1",

"username": "NULL",

"children": [

{

"id": "-1",

"username": "NULL",

"children": [

{

"id": "-1",

"username": "NULL",

"children": []

}

]

}

]

}

]

}第二阵列"157": {

"id": "157",

"username": "test1",

"children": [

{

"id": "158",

"username": "test1",

"children": [

{

"id": "159",

"username": "test2",

"children": [

{

"id": "160",

"username": "test3",

"children": []

},

{

"id": "160",

"username": "KICK ME BECAUSE I M NOT EXIST IN FIRST ARRAY",

"children": []

}

]

}

]

},

{

"id": "160",

"username": "KICK ME BECAUSE I M NOT EXIST IN FIRST ARRAY",

"children": [

{

"id": "159",,

"username": "KICK ME BECAUSE I M NOT EXIST IN FIRST ARRAY",

"children": [

{

"id": "161",

"username": "KICK ME BECAUSE I M NOT EXIST IN FIRST ARRAY",

"children": []

}

]

}

]

}

]

}预期产出"157": {

"id": "157",

"username": "test1",

"children": [

{

"id": "158",

"username": "test1",

"children": [

{

"id": "159",

"username": "test2",

"children": [

{

"id": "160",

"username": "test3",

"children": []

},

]

}

]

},

]

}

我正在尝试这个方法,但它不工作。$firstCount = (array_map('count', $actualTree));

$secondCount = (array_map('count', $emptyTree));

$chunk = array_slice($actualTree, 0 , $second[$this->userId], true);使用案例

我想做的事情是完全删除那些不存在于第一个数组中的数组子代。我正在建立一棵二进制树,一共有三层。第一个数组已经有了一个空值的二进制树,第二个数组是来自数据库的数据,我正在建立一个二进制树,一共有三层。第二个数组是来自数据库的数据,我只是简单地使用array_replace将空数据替换为实际数据。这样做很好,直到第二个数组的值比第一个数组多。所以为了让它工作,我必须删除这些额外的元素。

有谁能帮我把这些元素的长度改成相同的。任何帮助将被感激。先谢谢你。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值