ホームページ バックエンド開発 PHPの問題 PHP は配列内に存在しないと判断します

PHP は配列内に存在しないと判断します

May 19, 2023 pm 01:51 PM

PHP 開発では、配列は最も一般的に使用されるデータ型の 1 つです。場合によっては、特定の値が配列内に存在するかどうかを判断する必要がある場合、これを行うには in_array() 関数を使用できます。しかし、値が配列内に存在しないかどうかを判断する必要がある場合はどうすればよいでしょうか?この記事では、この問題を解決する 2 つの方法を紹介します。

方法 1: !in_array() 関数を使用する
in_array() 関数は、配列に値が存在するかどうかを判断できます。存在する場合は true を返し、存在しない場合は false を返します。次に、!in_array() 関数を使用して、配列に値が存在しないかどうかを確認します。以下のように、

$array = array(1, 2, 3, 4, 5);
if (!in_array(6, $array)) {
    echo '6不存在于数组中';
}
ログイン後にコピー

コードでは、配列に6が存在しないかを判定し、存在しない場合は「6は配列に存在しません」と出力します。

方法 2: array_search() 関数を使用する
array_search() 関数は、配列内の指定された値を検索し、対応するキー名を返します。検索が成功した場合はキー名が返され、そうでない場合は false が返されます。次に、値が配列内に存在しないかどうかを確認したい場合は、array_search() 関数を使用できます。

$array = array(1, 2, 3, 4, 5);
if (false === array_search(6, $array)) {
    echo '6不存在于数组中';
}
ログイン後にコピー

コード内では、array_search()関数を使用して、$array配列内の6のキー名を検索し、検索に失敗してfalseが返された場合は、6が存在しないと判断します。配列内に存在すると「6 が存在しません」と出力されます。

ただし、!in_array() 関数または array_search() 関数を使用して配列に値が存在するかどうかを判断する場合は、戻り値の型と値の両方を比較する必要があることに注意してください。単なる比較値ではありません。 PHP では false が 0 または空の文字列とみなされる場合があるためです。したがって、比較には「===」を使用することをお勧めします。例:

$array = array(0, false, "", null);
if (false === array_search(0, $array)) {
    echo "0不在数组中";
}
if (false === in_array(false, $array)) {
    echo "false不在数组中";
}
if (false === in_array("", $array)) {
    echo "空字符串不在数组中";
}
if (false === in_array(null, $array)) {
    echo "null不在数组中";
}
ログイン後にコピー

コードでは、$array 配列には 0、false、空の文字列、null が含まれています。array_search() 関数と in_array() 関数をそれぞれ使用して、これらの値が存在しないかどうかを確認します。配列。 falseは0と空文字列の型が異なるため、比較には「===」を使用する必要があります。

以上、配列に値が存在しないことを判定する2つの方法を紹介しましたので、PHP開発の参考になれば幸いです。

以上がPHP は配列内に存在しないと判断しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPアレイの重複排除のためのベストプラクティスは何ですか PHPアレイの重複排除のためのベストプラクティスは何ですか Mar 03, 2025 pm 04:41 PM

PHPアレイの重複排除のためのベストプラクティスは何ですか

PHPアレイの重複排除は、キー名の一意性を利用できますか? PHPアレイの重複排除は、キー名の一意性を利用できますか? Mar 03, 2025 pm 04:51 PM

PHPアレイの重複排除は、キー名の一意性を利用できますか?

最新のPHPコーディング基準とベストプラクティスは何ですか? 最新のPHPコーディング基準とベストプラクティスは何ですか? Mar 10, 2025 pm 06:16 PM

最新のPHPコーディング基準とベストプラクティスは何ですか?

PHP拡張機能とPECLを使用するにはどうすればよいですか? PHP拡張機能とPECLを使用するにはどうすればよいですか? Mar 10, 2025 pm 06:12 PM

PHP拡張機能とPECLを使用するにはどうすればよいですか?

PHPにメッセージキュー(rabbitmq、redis)を実装する方法は? PHPにメッセージキュー(rabbitmq、redis)を実装する方法は? Mar 10, 2025 pm 06:15 PM

PHPにメッセージキュー(rabbitmq、redis)を実装する方法は?

PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか? PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか? Mar 03, 2025 pm 04:47 PM

PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか?

PHPアレイの重複排除のための最適化手法は何ですか PHPアレイの重複排除のための最適化手法は何ですか Mar 03, 2025 pm 04:50 PM

PHPアレイの重複排除のための最適化手法は何ですか

リフレクションを使用してPHPコードを分析および操作する方法は? リフレクションを使用してPHPコードを分析および操作する方法は? Mar 10, 2025 pm 06:12 PM

リフレクションを使用してPHPコードを分析および操作する方法は?

See all articles