PHP はサーバーサイド プログラミング言語であり、文字列や配列に関連する多くの関数を含む、非常に豊富な関数ライブラリと組み込み関数を備えています。 PHP では、データの保存と処理に配列を使用することは非常に一般的な操作であり、指定された文字列が配列内に存在するかどうかを確認することも一般的な要件です。
文字列が配列内に存在するかどうかを判断するには、多くの方法があります。ループを使用して配列を走査することも、PHP 組み込み関数を使用して判断することもできます。以下では、いくつかの方法を詳しく紹介します文字列が配列内にあるかどうかを判断するためのメソッドです。
方法 1: in_array() 関数を使用して判断する
PHP には、配列内に値が存在するかどうかを迅速に判断できる in_array() 関数が用意されています。 in_array() 関数の基本的な使用法は次のとおりです。
in_array($needle, $haystack);
ここで、$needle
は検索する値、$haystack
は検索する配列です。見つかった。この関数はブール値を返します。指定された要素が見つかった場合は true
、それ以外の場合は false
を返します。
例:
$names = ['Alice', 'Bob', 'Charlie']; var_dump(in_array('Charlie', $names)); // 输出 true var_dump(in_array('David', $names)); // 输出 false
上記のコードでは、配列 $names
を定義し、in_array() 関数を使用して 'Charlie' を検索します。
と 'David'
の 2 つの値の場合、結果はそれぞれ true
と false
を返しました。
in_array() 関数を使用して文字列が配列内にあるかどうかを判断する場合は、次の問題に注意する必要があります。
方法 2: array_search() 関数を使用して決定する
配列内に表示される特定の位置を見つける必要がある場合は、array_search() 関数を使用できます。この関数は in_array() 関数と似ていますが、ブール値を返すのではなく、配列内で見つかる値のキー名を返す点が異なります。
array_search() 関数の基本的な使用法は次のとおりです。
array_search($needle, $haystack);
ここで、$needle
は検索する値、$haystack
は検索する配列です。指定された要素が見つかった場合、関数は配列内の要素のキー名 (つまり、要素に対応する配列の添字) を返します。それ以外の場合は、false
を返します。
例:
$names = ['Alice', 'Bob', 'Charlie']; echo array_search('Charlie', $names); // 输出 2 echo array_search('David', $names); // 输出 ''
上記のコードでは、配列 $names
を定義し、array_search() 関数を使用して 'Charlie' を検索します。 ## 2 つの値 # と
'David' があり、結果はそれぞれ
2 と
'' になります。
'David' を検索すると、
false ではなく空の文字列が返されることに注意してください。
array_key_exists($key, $array);ここで、
$key は検索対象のキー名、
$array は検索対象の配列です。指定されたキーが見つかった場合、関数は
true を返し、それ以外の場合は
false を返します。
$ages = ['Alice' => 18, 'Bob' => 21, 'Charlie' => 24]; var_dump(array_key_exists('Alice', $ages)); // 输出 true var_dump(array_key_exists('David', $ages)); // 输出 false上記のコードでは、連想配列
$ages を定義し、array_key_exists() 関数を使用して
'Alice を検索します。 ' と
'David' は 2 つのキー名で、結果はそれぞれ
true と
false を返します。
isset($array[$key]);ここで、
$array は検索対象の配列、
$key は照合対象のキー名です。キー名が一致する場合、isset() 関数は
true を返し、そうでない場合は
false を返します。
$settings = ['debug' => true, 'auth' => false, 'port' => 80]; var_dump(isset($settings['debug'])); // 输出 true var_dump(isset($settings['logging'])); // 输出 false上記のコードでは、連想配列
$settings を定義し、isset() 関数を使用して
'debug を検索します。 ' と
'logging' は 2 つのキー名で、結果はそれぞれ
true と
false を返します。
以上がphpの文字列が配列に入っているのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。