mb_strpos

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_strpos文字列の中に指定した文字列が最初に現れる位置を見つける

説明

mb_strpos(
    string $haystack,
    string $needle,
    int $offset = 0,
    ?string $encoding = null
): int|false

ある文字列の中で別の文字列が最初に現れる位置を見つけます。

マルチバイト文字列に正しくマッチするように strpos() を拡張したもので、 最初の 1 文字目の位置が 0 、2 文字目の文字が 1 というようになります。

パラメータ

haystack

調べたい文字列。

needle

haystack の中から探す文字列。 strpos() とは違い、 数値を指定しても文字コードの値と見なされることはありません。

offset

検索オフセット。 指定されない場合は、0 が使用されます。 負のオフセットは、文字列の末尾からのオフセットと解釈されます。

encoding

encoding パラメータには文字エンコーディングを指定します。省略した場合、もしくは null の場合は、 内部文字エンコーディングを使用します。

戻り値

文字列 haystack の中で needle が最初に現れる位置を数字で返します。 needle が見付からなかった場合、false を返します。

変更履歴

バージョン 説明
8.0.0 needle は、空の文字列も受け入れるようになりました。
8.0.0 encoding は、nullable になりました。
7.1.0 負の offset をサポートするようになりました。

参考

  • mb_internal_encoding() - 内部文字エンコーディングを設定あるいは取得する
  • strpos() - 文字列内の部分文字列が最初に現れる場所を見つける

関連キーワード:  最初, 位置, strpos, 指定, 文字, encoding, haystack, オフセット, offset, string