PHP で文字列の最後の文字を取得する方法
-
PHP で文字列の最後の文字を取得するために
substr()関数を使用する - PHP で直接文字列アクセスを使用して文字列の最後の文字を取得する
-
PHP で
forループを使用して文字列の最後の文字を取得する
この記事では、文字列の最後の文字を取得するメソッドを紹介します。
substr()関数を使用する- 文字列に直接アクセスする
forループを使用する
PHP で文字列の最後の文字を取得するために substr() 関数を使用する
PHP に組み込まれている substr() 関数は、文字列の部分文字列を取得できます。この関数には 3つのパラメーターがあり、そのうちの 1つはオプションです。この関数を使用するための正しい構文は次のとおりです
substr($stringName, $startingPosition, $lengthOfSubstring);
$stringName は入力文字列です。$startngPosition は部分文字列の開始インデックスです。$lengthOfSubstring は部分文字列の長さです。変数 $stringName と $startingPosition は必須パラメーターですが、$lengthOfSubstring はオプションのパラメーターです。$lengthOfSubstring が省略されると、サブストリングは $startngPosition から入力ストリングの終わりまで始まります。
<?php
$string = 'This is a string';
$lastChar = substr($string, -1);
echo "The last char of the string is $lastChar.";
?>
$startingPosition に正の値がある場合、部分文字列は文字列の左側、つまり文字列の先頭から始まります。$startingPosition が負の場合、部分文字列は文字列の右側、つまり文字列の終わりから始まります。
文字列の最後の char を取得するには、ここで $startingPosition の値として -1 を渡します。-1 は文字列の最後の文字を意味します。
出力:
The last char of the string is g.
PHP で直接文字列アクセスを使用して文字列の最後の文字を取得する
文字列は文字の配列です。char の配列と見なすことで、文字列の最後の char を取得できます。
<?php
$string = "This is a string";
$lengthOfString = strlen($string);
$lastCharPosition = $lengthOfString-1;
$lastChar = $string[$lastCharPosition];
echo "The last char of the string is $lastChar.";
?>
文字列の最後の文字のインデックスは、インデックスが 0 から始まるため、文字列の長さより 1 だけ小さくなります。$lengthOfString は、strlen() 関数を使用して文字列の長さを保持します。$lastCharPosition は、文字列の最後の char のインデックスを保持します。出力は、$lastCharPosition を文字の配列へのインデックスとして渡した後の最後の char です。
出力:
The last char of the string is g.
PHP 7.1.0 からの負の文字列インデックスアクセス
PHP 7.1.0 以降、文字列の負のインデックスもサポートされているため、取得するインデックスとして -1 を使用できます PHP の文字列の最後の文字。
コード例:
<?php
$string = "This is a string";
$lastChar = $string[-1];
echo "The last char of the string is $lastChar.";
?>
出力:
The last char of the string is g.
PHP で for ループを使用して文字列の最後の文字を取得する
string の最後の char を新しい文字列に格納して取得し、for ループで最後の文字をフェッチできます。string をトラバースし、最後の char に到達します。
<?php
$string = "This is a string";
$lastCharPosition = strlen($string) - 1;
for ($x = $lastCharPosition; $x < strlen($string); $x++) {
$newString = $string[$x];
}
echo "The last char of the string is $newString.";
?>
strlen() 関数を使用して最後の char のインデックスを取得し、for ループの $x に割り当てます。
出力:
The last char of the string is g.