in_array関数の使い方

in_array関数の使い方 PHP言語リファレンス
in_array関数の使い方
zucksadnetwork

in_array関数とは?

in_array関数は、PHPで指定した値が配列に含まれているかどうかを調べるための関数です。

in_array関数の概要

in_array関数の基本的な書式は、次のとおりです。

PHP

bool in_array(mixed $needle, array $haystack, bool $strict = FALSE);
  • mixed $needle:検索する値
  • array $haystack:検索対象の配列
  • bool $strict = FALSE:型チェックを行うかどうか(省略可)

needlehaystack に含まれている場合は、true を返します。含まれていない場合は、false を返します。

in_array関数の書き方

in_array関数の書き方は、次のとおりです。

  1. 検索する値を用意します。
  2. 検索対象の配列を用意します。
  3. in_array関数を呼び出して、結果を取得します。

PHP

// 検索する値の用意
$needle = "山田 太郎";

// 検索対象の配列の用意
$haystack = array("山田 太郎", "佐藤 花子", "鈴木 一郎");

// in_array関数の呼び出し
$result = in_array($needle, $haystack);

// 結果の確認
if ($result) {
    echo "見つかりました。";
} else {
    echo "見つかりませんでした。";
}

このコードを実行すると、次の出力になります。

見つかりました。

in_array関数の作成・使用方法

in_array関数は、次の2つの方法で使用できます。

  • if 文や switch 文などの条件分岐で使用する
  • foreach 文で使用する

PHP

// if 文での使用
$needle = "山田 太郎";
$haystack = array("山田 太郎", "佐藤 花子", "鈴木 一郎");

if (in_array($needle, $haystack)) {
    echo "見つかりました。";
} else {
    echo "見つかりませんでした。";
}

PHP

// foreach 文での使用
$haystack = array("山田 太郎", "佐藤 花子", "鈴木 一郎");

foreach ($haystack as $value) {
    if (in_array($value, $haystack)) {
        echo $value . " は見つかりました。";
    }
}

in_array関数のスクリプトサンプル

次のスクリプトは、in_array関数を使用して、さまざまなデータの検索を行っています。

PHP

// 文字列の検索
$needle = "山田 太郎";
$haystack = array("山田 太郎", "佐藤 花子", "鈴木 一郎");

if (in_array($needle, $haystack)) {
    echo "見つかりました。";
} else {
    echo "見つかりませんでした。";
}

// 数値の検索
$needle = 20;
$haystack = array(10, 20, 30);

if (in_array($needle, $haystack)) {
    echo "見つかりました。";
} else {
    echo "見つかりませんでした。";
}

// 配列の検索
$needle = array("山田 太郎", "佐藤 花子");
$haystack = array(array("山田 太郎", "佐藤 花子"), array("鈴木 一郎", "田中 花子"));

if (in_array($needle, $haystack)) {
    echo "見つかりました。";
} else {
    echo "見つかりませんでした。";
}

このスクリプトを実行すると、次の出力になります。

見つかりました。
見つかりました。
見つかりました。

in_array関数特有の事柄・注意点

  • strict オプションを TRUE に設定すると、型チェックが行われます。FALSE に設定すると、型チェックが行われません。

in_array関数のまとめ

in_array関数は、

in_array関数のまとめ

in_array関数は、PHPで指定した値が配列に含まれているかどうかを調べるための便利な関数です。PHPの初心者でも使いやすいので、ぜひ覚えておきましょう。

in_array関数を使用する際の注意点は、次のとおりです。

  • strict オプションを TRUE に設定すると、型チェックが行われるため、注意が必要です。

これらの注意点を踏まえて、in_array関数を活用してください。

PHP言語リファレンス制御構造
PHPプログラミング図鑑をフォローする
PHPプログラミング図鑑