ホームページ > バックエンド開発 > PHPの問題 > PHPで配列に指定された値があるかどうかを検出する方法

PHPで配列に指定された値があるかどうかを検出する方法

青灯夜游
リリース: 2023-03-16 19:08:01
オリジナル
3881 人が閲覧しました

3 方法: 1. foreach ステートメントと "== 演算子、構文 "foreach($arr as $v){if($v==specified value){//exists}}" を使用します。 2. in_array() を使用します。構文は「in_array("指定された値", array)」です。TRUE が返された場合は存在し、それ以外の場合は存在しません。 3. array_search() を使用します。構文は「array_search("指定された値", array)」です。値が存在する場合は、対応するキー名が返され、そうでない場合は false が返されます。

PHPで配列に指定された値があるかどうかを検出する方法

このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、DELL G3 コンピューター

php 検出配列 値を指定する方法は 3 つありますか?

#方法 1: foreach ステートメントと "== 演算子を使用します

  • foreach ステートメントは配列をループします

  • ループ本体で「==」演算子を使用して、現在の要素が指定された値と等しいかどうかを比較します

  • 1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    <?php

    header(&#39;content-type:text/html;charset=utf-8&#39;);  

    $arr = array(1,"2",2,3,"4",4,5);

    foreach($arr as $v){

        if($v==1){

            echo "指定值存在<br>";

            break;

        }

    }

    ?>

    ログイン後にコピー

PHPで配列に指定された値があるかどうかを検出する方法

最適化:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<?php

header(&#39;content-type:text/html;charset=utf-8&#39;);  

function f($arr,$val){

    $con=0;

    foreach($arr as $v){

        if($v==$val){

            $con=1;

            break;

        }else{

            $con=0;

        }

    }

    if($con==1){

        echo "指定值 $val 存在<br>";

    }else{

        echo "指定值 $val 不存在<br>";

    }

}

 

$sites = array(1,"2",2,3,"4",4,5);

f($sites,"1");

f($sites,2);

f($sites,"4");

?>

ログイン後にコピー

PHPで配列に指定された値があるかどうかを検出する方法

#方法 2: in_array() 関数を使用する

php では、配列内に特定の値が存在するかどうかをクエリする場合、組み込み関数 in_array()

in_array() 関数を直接使用して、配列内に特定の値が存在するかどうかを検索できます。指定された値が配列内に存在します。構文形式:

1

in_array ( $search , $array ,$strict)

ログイン後にコピー

##ParameterDescriptionsearch## #必須。配列内で検索する値を指定します。 配列必須。検索する配列を指定します。 ###############厳しい######### オプション。このパラメータが TRUE に設定されている場合、in_array() 関数は、検索対象のデータが配列の値と同じ型であるかどうかをチェックします。 戻り値: 値が配列内に見つかった場合は TRUE、それ以外の場合は FALSE。 例: 方法 3: array_search() 関数を使用する

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?php

header(&#39;content-type:text/html;charset=utf-8&#39;);  

function f($arr,$val){

    if (in_array($val, $arr)){

        echo "指定值 $val 存在<br>";

    }else{

        echo "指定值 $val 不存在<br>";

    }

}

 

$sites = array(1,"2",2,3,"4",4,5);

f($sites,"1");

f($sites,2);

f($sites,6);

?>

ログイン後にコピー
array_search() 関数は、配列内のキー値を検索し、対応するキー名を返します。


この関数を使用して、配列に特定の値が存在するかどうかをクエリすることもできます。存在する場合は、対応するキー名が返されます。存在しない場合は、false が返されます。

構文:

1

array_search(value,array,strict)

ログイン後にコピー

PHPで配列に指定された値があるかどうかを検出する方法

パラメータ説明


必須。配列内で検索するキー値を指定します。 配列必須。検索する配列を指定します。 オプション。このパラメータが TRUE に設定されている場合、関数は配列内で同じデータ型と値の要素を検索します。可能な値: true true に設定すると、配列内の指定された値の型がチェックされ、数値 5 と文字列 5 は異なります (例 2 を参照)。
#strict
false - デフォルトの
戻り値: 指定されたキー値が配列内で見つかった場合は、対応するキー名を返し、それ以外の場合は FALSE を返します。 。配列内でキー値が複数回見つかった場合は、最初に見つかったキー値に一致するキー名が返されます。
  • 例:
  • 1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    <?php

    header(&#39;content-type:text/html;charset=utf-8&#39;);  

    function f($arr,$val){

        $res=array_search($val, $arr);

        var_dump($res);

    }

     

    $sites = array(1,"2",2,3,"4",4,5);

    f($sites,"1");

    f($sites,2);

    f($sites,6);

    ?>

    ログイン後にコピー
推奨学習: 「PHP ビデオ チュートリアル

以上がPHPで配列に指定された値があるかどうかを検出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート