PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのin_array()関数の使い方を徹底解説

in_array() 関数は、指定した値が配列の中に存在するかどうかを確認するためのPHP組み込み関数です。配列の検索処理において非常に頻繁に使われる基本的な関数の一つです。

構文

in_array(find, arr, type)

パラメータ

  • find − 配列の中で検索したい値を指定します。

  • arr − 検索対象となる配列を指定します。

  • type − 検索モードを指定します(省略可能)。このパラメータに TRUE を設定すると、値だけでなくデータ型まで一致しているかどうかを厳密に比較します。デフォルトは FALSE であり、その場合は緩やかな比較が行われます。

戻り値

in_array() 関数は、指定した値が配列内に見つかった場合は TRUE、見つからなかった場合は FALSE を返します。

使用例

以下は、in_array() 関数を使って、配列内に特定の文字列が存在するかどうかを確認するシンプルな例です。

<?php
$stu = array("Tom", "Amit", "Peter", "Rahul");
if (in_array("Amit", $stu)) {
    echo "Match!";
} else {
    echo "No Match!";
}
?>

出力結果

上記コードの実行結果は以下の通りです。

Match!

配列内に「Amit」という値が存在するため、「Match!」というメッセージが出力されます。

厳密な型比較の例

次に、第3引数に TRUE を指定し、値とデータ型の両方を厳密に比較する例を見てみましょう。

<?php
$pro = array("Tom", "Amit", "Peter", "Rahul", 5, 10);
if (in_array(5, $pro, TRUE)) {
    echo "Match!";
} else {
    echo "No Match!";
}
?>

出力結果

Match!

この例では、整数の 5 が配列内に存在し、型も一致しているため「Match!」が出力されます。なお、第3引数を省略した緩やかな比較では、文字列の "5" と数値の 5 が同一視されてしまいます。意図しないマッチを防ぎたい場合は、TRUE を指定した厳密な比較を活用すると安全です。

  1. PHPのarray_reverse()関数の使い方を解説!配列を逆順にする方法

    PHPのarray_reverse()関数は、配列の要素を逆順に並べ替えた新しい配列を返す関数です。元の配列は変更されず、要素の順序が反転した結果のみを受け取ることができます。構文array_reverse(arr, preservekey)パラメータarr − 逆順にしたい対象の配列を指定します。preservekey − 配列のキーを保持するかどうかを指定します。TRUEまたはFALSEの値を取ります。省略した場合(デフォルトはFALSE)は、キーが振り直され数値キー(0、1、2…)になります。TRUEを指定すると、元のキーと値の対応関係がそのまま維持されます。戻り値array_rever

  2. PHPのarray()関数とは?配列の作成方法をわかりやすく解説

    PHPのarray()関数は、配列を作成するための関数です。PHPにおける配列には、主に以下の3種類が存在します。インデックス配列 − 数値インデックス(0から始まる番号)で要素を管理する配列連想配列 − 文字列などの名前付きキーで要素を管理する配列多次元配列 − 配列の中に1つ以上の配列を含む、入れ子構造の配列構文// 数値インデックスを持つ配列(インデックス配列) array(value1, value2, ...); // 名前付きキーを持つ配列(連想配列) array(key1 => value1, key2 => value2, ...)パラメータvalue − 配列に