为了账号安全,请及时绑定邮箱和手机立即绑定

如果多维数组PHP中的另一个数组获取了所有键,如何删除数组

如果多维数组PHP中的另一个数组获取了所有键,如何删除数组

PHP
一只萌萌小番薯 2023-04-21 16:55:03
你能帮我解决这个问题吗?在 PHP 中删除第 4 个和第 5 个数组的函数是什么。Array(    [0] => Array        (            [10] => 98            [11] => 1            [433438] => 8        )    [1] => Array        (            [10] => 98            [11] => 1            [433438] => 1        )    [2] => Array        (            [13] => 98            [11] => 2            [433438] => 8        )    [3] => Array        (            [14] => 98            [11] => 2            [433438] => 1        )    [4] => Array        (            [10] => 18            [11] => 1        )    [5] => Array        (            [14] => 18            [11] => 2        ))提前致谢。
查看完整描述

2 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

$base = [

    [10 => 98, 11 => 1, 433438 => 8],

    [10 => 98, 11 => 1, 433438 => 1],

    [13 => 98, 11 => 2, 433438 => 8],

    [14 => 98, 11 => 2, 433438 => 1],

    [10 => 18, 11 => 1],

    [14 => 18, 11 => 2],

];


$invalid = [];


for ($i = 0; $i <= count($base) - 1; $i++) {

    for ($j = 0; $j <= count($base) - 1; $j++) {

        $refCount = count($base[$j]);

        $interSectCount = count(array_intersect(array_keys($base[$i]), array_keys($base[$j])));

        if (count($base[$i]) !== $refCount && $interSectCount === $refCount) {

            $invalid[] = $j;

        }

    }

}


foreach ($invalid as $item) {

    unset($base[$item]);

}


查看完整回答
反对 回复 2023-04-21
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

您可以使用array_pop()消除数组最后一个元素的函数,但如果您使用它两次,您将获得所需的结果


<?php

$data  = [

    1 => [1,2],

    2 => [1,3],

    3 => [1,4]

];

$value = array_pop($data);

$value = array_pop($data);

?>

输出


Array

(

    [1] => Array

        (

            [0] => 1

            [1] => 2

        )


)


查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信