文字列関連

[PHP] バイト単位で文字を切り出す(substr)

2015年9月12日

文字列をバイト単位で切り出すには、substr関数を使用します。

サンプルソース

例)バイト単位で文字を切り出すサンプル


<?php
 $aa = "ABCDEFG";

 //3バイト目から後ろを取得する
 print substr($aa, 2);
 →CDEFG

 //先頭から3バイト分取得する
 print substr($aa, 0, 3);
 →ABC

 //2バイト目から3バイト分取得する
 print substr($aa, 1, 3);
 →BCD

位置は0から数えるので、例えば3バイト目からだと2を指定します。

substrはバイト単位で切り出すので、文字列に全角文字が含まれていると
おかしな結果になる場合があるのでご注意ください。

例)substrの結果がおかしくなるパターン


$aa = "あいうえお";
print substr($aa, 1);
→��いうえお

備考

  • 文字数単位で切り出したい場合は、mb_substr関数を使用します。

関連記事

-文字列関連
-