stripos

関数の概要

PHPの stripos 関数は、対象の文字列内で指定した部分文字列の位置を大文字・小文字を区別せずに検索します。文字の大小を無視して検索したい場合に非常に便利な関数です。

パラメータの説明

  • haystack(必須):検索対象となる文字列。
  • needle(必須):検索したい部分文字列。数字や文字列で指定できます。
  • offset(任意):検索を開始する位置のオフセット。省略時は文字列の先頭から検索を始めます。

戻り値

指定した部分文字列が見つかった場合は、その位置(0から始まるインデックス)を返します。見つからなかった場合は FALSE を返します。

使用例

基本的な使い方

$pos = stripos("Hello World", "world");
var_dump($pos);  // int(6)

大文字小文字を区別せず「world」を検索し、位置6が返されます。

offsetパラメータを使った例

$pos = stripos("apple, banana, Apple", "apple", 1);
var_dump($pos);  // int(14)

オフセット1から検索を始めるため、2つ目の「Apple」が位置14で見つかります。

文字列が見つからなかった場合の例

$pos = stripos("PHP is great", "java");
var_dump($pos);  // bool(false)

「java」は含まれていないため、FALSEが返されます。

関連する関数

  • strpos:大文字小文字を区別して文字列の位置を検索
  • strripos:大文字小文字を区別せず、文字列の最後から検索
  • strstr:部分文字列以降の文字列を取得

まとめ

stripos は、大文字小文字を区別せずに文字列内の部分文字列の位置を調べたい場合に非常に役立ちます。オフセット指定も可能で柔軟に利用できるため、日常的な文字列操作や検索処理でよく使われます。見つからなかった場合は FALSE を返す点にも注意しましょう。