:Check PHP配列が空ですか?私は以下のようなPHPの配列が生じています
echo '<pre>', print_r($empData[$employee]['banks']).'</pre>';
Array
(
[0] => Array
(
[bank_name] => []
[bank_code] =>
[branch] =>
[account_number] =>
[account_type] =>
)
)
今、私がチェックする必要があり、このbank array
は空きません。つまり、すべてのインデックスに値が必要です。
$proceed = false;
foreach ($empData[$employee]['banks'] as $key) {
echo '<pre>', print_r($key).'</pre>';
foreach ($key as $k => $v) {
if (empty($empData[$employee]['banks'][$k])){
$proceed = true;
break;
}
}
}
if(!$proceed) {
echo 'This array is empty';
}
else {
echo 'This array is not empty';
}
しかし、その私のために働いていない:
これは、私はそれを試してみました方法です。配列が空でない場合でも、常にその部分に移動します。
UPDATE:
$proceed = false;
foreach ($empData[$employee]['banks'] as $bank) {
if (!array_filter($bank)) {
$proceed = true;
break;
}
}
if($proceed) {
echo 'This array is empty';
}
else {
echo 'This array is not empty';
}
ARRAY1:その空ではありません。しかし、出力はIts not empty
と言います。だからOK
This array is not empty
Array
(
[0] => Array
(
[bank_name] => Bank Name
[bank_code] => 7083
[branch] => Branch Name
[account_number] => 234234324242
[account_type] => NRFC
)
)
Array2:それは空です。しかし、出力はIts not empty
と言います。だから間違っている
This array is not empty
Array
(
[0] => Array
(
[bank_name] => []
[bank_code] =>
[branch] =>
[account_number] =>
[account_type] =>
)
)
誰かが私を助けてくれることを願っています。空の配列の場合
'empty($ v)'または 'empty($ key [$ k])'を使用するのではなく、配列内のパスを完全修飾するのはなぜですか? – SOFe
空の条件が真であれば、 '$ proceed'がtrueに設定されます。なぜ 'if(!proceed)'の配列が代わりに空であるのですか? – SOFe
私はそれを正しく読んでいれば、配列が空であるがif文の中にあるならば、$をtrueに設定しています。空であることをエコーするために$がfalseになることを期待しています。しかし、私は間違っている可能性があります – gavgrif