strpos

strpos -- 文字列が最初に現れる場所を見つける

説明

int strpos(string haystack, string needle, int [offset] );

文字列 haystack の中で、 needleが最初に現れた位置を数字で返します。 strrpos()とは異なり、この関数は needle パラメータとして文字列全体をとり、 その文字列全体が検索対象となります。

needleが見つからない場合はfalseを返します。

注意: "位置0で文字が見つかった"と"文字がみつからなかった"という返り値 は混同しやすいです。これらを区別するには、次のようにします。

  1 
  2 // PHP 4.0b3以降の場合:
  3 $pos = strpos ("b", $mystring);
  4 if ($pos === false) { // 注意: 等号が3つです。
  5     // 見つかりませんでした...
  6 }
  7 
  8 // 4.0b3より前のバージョンの場合:
  9 $pos = strpos ("b", $mystring);
 10 if (is_string ($pos) && !$pos) {
 11     // 見つかりませんでした...
 12 }
 13 	

needle が文字列でない場合は数値に 変換されて、その結果が検索対象の文字コードとして適用されます。

オプションの offset パラメータにより haystack のどの文字から検索を開始するかを 指定することが可能です。 この場合でも、返される位置は haystack の先頭に 対する相対位置です。

strrpos(), strrchr(), substr(), stristr(), strstr() も参照下さい。