文字列関数
| 解説 | 文字列の一部分を取得する |
|---|---|
| 書式 | string substr( string string, int start [, int length ] ) |
string substr( string 文字列, int 開始位置 [, int 長さ ] ) |
|
| 引数 |
string
文字列
|
start
開始位置
|
|
length
長さ
|
|
| 返値 | 指定した文字列の、開始位置から長さ分の文字列 |
substr()は、指定した文字列中で、指定した開始位置から指定した長さバイト分の文字列を取り出します。
string
文字列
start
開始位置
開始位置を数値で指定します。正の数の場合は最初の文字を 0 として数えます。
負の数の場合は最後の文字から数えます。負の数を指定した場合は最後の文字から逆方向に数えます。
length
長さ
参考関数
strstr()---- 文字列が最初に表れる場所を取得するstrchr()---- strstr()関数のエイリアスstristr()---- 大文字・小文字を区別せずに文字列が最初に表れる位置を数値で取得するstrrchr()---- 文字が最後に現れる場所を取得するereg()---- 正規表現によるパターンマッチを行う
サンプルスクリプト
簡単な利用例
<?php
$str = 'abcdef';
print substr($str, 1)."<br />\n"; // 1番目の文字から最後まで
print substr($str, 0, 3); // 0番目の文字から3バイト分
?>
出力結果
bcdef
abc
abc
負の開始位置
<?php
$str = 'abcdef';
print substr($str, -1)."<br />\n"; // -1番目の文字から最後まで
print substr($str, -2)."<br />\n"; // -2番目の文字から最後まで
print substr($str, -3, 2); // -3番目の文字から2バイト分
?>
出力結果
f
ef
de
ef
de
負の長さ
<?php
$str = 'abcdef';
print substr($str, 0, -1)."<br>\n"; // 0番目の文字から-1バイト分
print substr($str, 2, -1)."<br>\n"; // 2番目の文字から-1バイト分
print substr($str, -4, -2); // -4番目の文字から-2バイト分
?>
出力結果
abcde
cde
cd
cde
cd


