【PHP】 substr関数/mb_substr関数(文字列の一部を取得する)
substr関数の使い方(文字列の一部を取得する)
php3~ で使用できます。
substr関数 : 書式
substr(文字列, 開始位置 [, 取得するサイズ])
戻り値:抽出された文字列
戻り値:抽出された文字列
substr関数は文字列の一部を取得します。OS名の先頭3文字が「Win」であればWindows用の処理をしたり、4桁の年数の下2桁を取得するなど、幅広く利用されています。
「substr(x, 0, n)」といった記述の「文字列xの先頭からn文字を取り出す」という使われ方が多くされています。
「substr(x, 0, n)」といった記述の「文字列xの先頭からn文字を取り出す」という使われ方が多くされています。
第3引数である「取得する文字サイズ」を省略すると、指定した位置以降の文字列が取得できます。
substr関数 : 使用例
- PHPのメジャーバージョンを取得するecho substr(PHP_VERSION, 0, 1); →「7」を取得
- 拡張子を除くファイル名を取得する$str = "abc.php";
echo substr($str, 0, srpos($str, ".")); →「abc」を出力<解説>
strpos関数で、ファイル名($str)を検索して、最初に見つかった「.」位置を取得し、第3引数にセットしています。
【PHP・文字列関数】文字列を検索する関数の使い方
stristr/strstr/strrpos/strpos/strrchr/mb_strrpos/mb_strpos関数は、すべて文字列を検索する関数です。それぞれの関数の違いについて、使用例を用いながら解説します。
- 年月を取得する$str = "2004/08/23";
echo substr($str, 5, 5); →「08/23」を出力
mb_substr関数の使い方(マルチバイト文字列の一部を取得する)
php4.0.6~ で使用できます。
mb_substr関数 : 書式
mb_substr(文字列, 開始位置 [, 取得する文字数 [, 文字コード]])
戻り値:抽出した文字列
戻り値:抽出した文字列
mb_substr関数はマルチバイト文字列の一部を取得します。上述の、文字列の一部を取得するsubstr関数と同じように、抽出位置の1文字目は0から始まります。また、取得するサイズは文字数で指定します。
mb_substr関数 : 使用例
- マルチバイト文字列の一部を取得するecho mb_substr("東京都渋谷区", 3, 2); →「渋谷」を出力
echo mb_substr("東京都渋谷区", 3); →「渋谷区」を出力
echo mb_substr("東京都渋谷区", 3, 3, "EUC-JP"); →「渋谷区」を出力
echo mb_substr("東京都123", 2, 4); →「都123」を出力
- マルチバイト文字列の左端を取得するecho mb_substr("日本語", 0, 1); →「日」を出力
関連リンク
PHPトップページ
PHP入門 & 関数リファレンス
PHPの初心者からベテランまで活用できるページです。初めての方はもちろん、もう一度基礎から学びなおしたい方は、基礎知識のページを順に読んで理解しましょう。ベテランの方向けには、関数の書式・パラメーターを調べられる構成になっています。PHPプログラム作成時にご活用下さい。