1. ホーム
  2. php

[解決済み】配列が空かどうかをチェックする【重複あり

2022-04-02 12:29:01

質問

私は以下のコードを持っています。

<?php

$error = array();
$error['something'] = false;
$error['somethingelse'] = false;

if (!empty($error))
{
    echo 'Error';
}
else
{
    echo 'No errors';
}

?>

しかし empty($error) は依然として true 何も設定されていないにもかかわらず。

何が正しくないのか?

解決方法は?

配列には2つの要素があり、これが配列が空であることを意味するわけではありません。手っ取り早い方法として、以下のようにすることができます。

$errors = array_filter($errors);

if (!empty($errors)) {
}

array_filter() と等しい値を配列からすべて削除します。 null , 0 , '' または false .

そうでなければ、あなたの特定のケースでは empty() を構築すると、常に true の値であっても、少なくとも1つの要素があれば、それは空です。