鍍金池/ 問答/PHP  HTML/ php在盡量不用循環(huán)的情況下,判斷二維數(shù)組中為空一維數(shù)組的數(shù)量

php在盡量不用循環(huán)的情況下,判斷二維數(shù)組中為空一維數(shù)組的數(shù)量

請(qǐng)問php中怎么在不用for等循環(huán)的情況下,判斷二維數(shù)組中各一維數(shù)組是否為空,并統(tǒng)計(jì)出空數(shù)組的個(gè)數(shù),查找了系統(tǒng)函數(shù)并沒有發(fā)現(xiàn)相關(guān)的函數(shù),特來請(qǐng)教。

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

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

比如說上面兩個(gè)數(shù)組,在不用循環(huán)或者用循環(huán)的情況下,怎么給出優(yōu)雅的答案?

回答
編輯回答
萌面人

json_encode?然后查詢一下 []這個(gè)字符串的出現(xiàn)次數(shù)?

2018年4月16日 02:16
編輯回答
無標(biāo)題

如果只是統(tǒng)計(jì) 空的個(gè)數(shù),以下代碼應(yīng)該可以

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

$b = array_filter($a);

$nullnum = count($a)-count($b);

echo $nullnum;
2018年9月10日 14:03
編輯回答
離人歸
$b = [
    ['a' => 1],
    [],
    [],
    ['b' => 2],
    []
];

// 數(shù)組去空
$tmp = array_filter($b);

echo '<pre>';
var_dump(array_diff_key($b, $tmp));

結(jié)果:

array(3) {
  [1]=> array(0) { }
  [2]=> array(0) { }
  [4]=> array(0) { }
}

這些函數(shù)內(nèi)部肯定還是循環(huán)

2017年9月22日 07:59