php在尽量不用循环的情况下,判断二维数组中为空一维数组的数量

请问php中怎么在不用for等循环的情况下,判断二维数组中各一维数组是否为空,并统计出空数组的个数,查找了系统函数并没有发现相关的函数,特来请教。

 $a = [
        [],
        [],
        [],
        [],
        []
    ];

$b = [
    ['a' => 1],
    [],
    [],
    ['b' => 2],
    []
];

比如说上面两个数组,在不用循环或者用循环的情况下,怎么给出优雅的答案?


Qyouu
浏览 1713回答 2
2回答

拉丁的传说

$b&nbsp;=&nbsp;[ &nbsp;&nbsp;&nbsp;&nbsp;['a'&nbsp;=>&nbsp;1], &nbsp;&nbsp;&nbsp;&nbsp;[], &nbsp;&nbsp;&nbsp;&nbsp;[], &nbsp;&nbsp;&nbsp;&nbsp;['b'&nbsp;=>&nbsp;2], &nbsp;&nbsp;&nbsp;&nbsp;[] ];//&nbsp;数组去空$tmp&nbsp;=&nbsp;array_filter($b);echo&nbsp;'<pre>'; var_dump(array_diff_key($b,&nbsp;$tmp));结果:array(3)&nbsp;{ &nbsp;&nbsp;[1]=>&nbsp;array(0)&nbsp;{&nbsp;} &nbsp;&nbsp;[2]=>&nbsp;array(0)&nbsp;{&nbsp;} &nbsp;&nbsp;[4]=>&nbsp;array(0)&nbsp;{&nbsp;} }这些函数内部肯定还是循环

千巷猫影

如果只是统计 空的个数,以下代码应该可以$a&nbsp;=&nbsp;[ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;['a'&nbsp;=>&nbsp;1], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[] &nbsp;&nbsp;&nbsp;&nbsp;]; $b&nbsp;=&nbsp;array_filter($a); $nullnum&nbsp;=&nbsp;count($a)-count($b);echo&nbsp;$nullnum;
打开App,查看更多内容
随时随地看视频慕课网APP