関数 mb_strpos

関数 mb_strpos は、マルチバイトエンコーディング(例:UTF-8)をサポートして、文字列内で部分文字列が最初に出現する位置を検索します。第一引数は検索対象の文字列、第二引数は検索する部分文字列、第三引数(オプション)は検索開始位置、第四引数(オプション)はエンコーディングを渡します。

構文

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

例

文字列内の部分文字列の位置を検索します:

php<?php
  $res = mb_strpos('abcde', 'b');
  echo $res;
?>

コード実行結果:

php1

例

検索開始位置を指定しての検索(3文字目から開始):

php<?php
  $res = mb_strpos('abcabc', 'a', 2);
  echo $res;
?>

コード実行結果:

php3

例

キリル文字(UTF-8)を含む文字列での検索:

php<?php
  $res = mb_strpos('абвгде', 'в', 0, 'UTF-8');
  echo $res;
?>

コード実行結果:

php2

関連項目

  • 関数 strpos,
    マルチバイトエンコーディングを考慮せずに部分文字列の位置を検索する関数
  • 関数 mb_strlen,
    マルチバイトエンコーディングを考慮して文字列の長さを返す関数