ホームページ  >  記事  >  バックエンド開発  >  PHPにおけるin_arrayの暗黙的な変換例を詳しく解説

PHPにおけるin_arrayの暗黙的な変換例を詳しく解説

小云云
小云云オリジナル
2018-03-09 10:08:051293ブラウズ

今日インターフェースを作成するとき、多数の基本情報パラメーターを渡す必要があります。パラメーターには、検証の便宜上、int と string の 2 つのタイプがあります。 in_array(0 , $param) を使用して int パラメータが 0 であるかどうかを判断し、次に string パラメータが空であるかどうかを個別に判断します。 サンプルコードは次のとおりです。正しいパラメータが渡されると、パラメータが正しくないというプロンプトが返されることがわかりました。 ! !

理由

この状況はまさに in_array が問題を引き起こしているために発生します。 in_array(search,array) は配列内の各値を search と比較することと同じです。 $param array には int パラメータもあります。文字列パラメーター。これは、PHP の暗黙の変換規則と同等です。

      if(in_array(0, $param) || $param['img'] == '') {
        $this->errorCode = 10030;
        $this->errorMessage = '参数不正确';
        return false; 
      }

Solution

in_array は 3 番目のパラメーター true を追加します。これは、検索されたデータの型と配列の値が同じであるかどうかを確認するために使用されます。そのため、この関数は、要素が配列内に存在します データ型が指定された値と同じである場合にのみ true を返します
上記で説明したビジネスの場合、より厳密にして、int データを配列に格納し、文字列を配列に格納し、データ調整を実行することができますこのようにして、異なる型の 2 つの配列で上記の問題は発生しません

関連する推奨事項:


JavaScript での暗黙的な変換の例と概要について

暗黙的な変換を使用するにはどうすればよいですか?暗黙的変換例の使い方をまとめます


JavaScriptの暗黙的変換の詳しい説明


以上がPHPにおけるin_arrayの暗黙的な変換例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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