substr( string $string, int $start[, int $length ] )
は、文字列「$string」の中の取得開始位置「$start」から、取得終了位置「$length」までの、部分文字列を取得する組み込み関数。
定義
パラメータ
- 文字列型 $string
一部分を取得したい文字列を指定する。
- 整数型 $start
取得開始位置。
正数を指定した場合、「文字列型 $string」の先頭から数えた位置を、取得開始位置とする。
負数を指定した場合、「文字列型 $string」の末尾から数えた位置を、取得開始位置とする。
- 整数型 $length
正数を指定した場合、取得する長さ(バイト数)。
負数を指定した場合、「文字列型 $string」の末尾から数えた位置を、取得終了位置とする。
戻り値
文字列の中の取得開始位置から、取得終了位置までの、部分文字列。
取得に失敗した場合は、「FALSE」を返す。
構文
取得開始位置を指定し、部分文字列を取得
「文字列」の「取得開始位置」から「文字列」の末尾までの、「部分文字列」を得る。
「取得開始位置」に負数を指定した場合、「文字列」の末尾から数えた位置を、取得開始位置とする。
取得開始位置と長さを指定し、部分文字列を取得
「文字列」の「取得開始位置」から「長さ」分の、「部分文字列」を得る。
「取得開始位置」に負数を指定した場合、「文字列」の末尾から数えた位置を、取得開始位置とする。
取得開始位置と取得終了位置を指定し、部分文字列を取得
「文字列」の「取得開始位置」から「取得終了位置」までの、「部分文字列」を得る。
「取得終了位置」は、負数で指定する。負数で指定することで、「文字列」の末尾から数えた位置を、取得終了位置とすることができる。
「取得開始位置」に負数を指定した場合、「文字列」の末尾から数えた位置を、取得開始位置とする。
サンプル
取得開始位置を指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, 5 );
?>
↓↓↓出力結果↓↓↓
取得開始位置と長さを指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, 5, 3 );
?>
↓↓↓出力結果↓↓↓
取得開始位置と取得終了位置を指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, 5, -3 );
?>
↓↓↓出力結果↓↓↓
取得開始位置を負数で指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, -7 );
?>
↓↓↓出力結果↓↓↓
取得開始位置(負数)と長さを指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, -7, 3 );
?>
↓↓↓出力結果↓↓↓
取得開始位置(負数)と取得終了位置を指定し、部分文字列を取得
$var = "0123456789";
echo substr( $var, -7, -3 );
?>
↓↓↓出力結果↓↓↓