私はたくさんの答えを探してきましたが、どれも私のために働いていません。
$quantities
これは私のアレイに割り当てられたデータです:
Array(
[10] => Array([25.00] => 1)
[9] => Array([30.00] => 3)
[8] => Array([30.00] => 4)
[12] => Array([35.00] => )
[1] => Array([30.00] => )
[2] => Array([30.00] => )
)
[12]
[1]
他のすべてを保持し[2]
ながら、空の値を持つサブ配列を削除する方法を探しています。
望ましい結果:
Array(
[10] => Array([25.00] => 1)
[9] => Array([30.00] => 3)
[8] => Array([30.00] => 4)
)
公式のphpドキュメントで多くの関数を試しましたが、どれも機能しませんでした。
私はこれを使用しました:
function array_filter_recursive($array, $callback = null) {
foreach ($array as $key => & $value) {
if (is_array($value)) {
$value = array_filter_recursive($value, $callback);
} else {
if ( ! is_null($callback)) {
if ( ! $callback($value)) {
unset($array[$key]);
}
} else {
if ( ! (bool) $value) {
unset($array[$key]);
}
}
}
}
unset($value);
return $array;
}
ただし、サブ配列内の要素を削除するだけです。サブアレイを完全に削除する必要があります。
私はこれを望んでいません:
Array(
[10] => Array([25.00] => 1)
[9] => Array([30.00] => 3)
[8] => Array([30.00] => 4)
[12] => Array()
[1] => Array()
[2] => Array()
)