實(shí)現(xiàn)字符串反轉(zhuǎn)的兩種方法:1、使用for語句倒序遍歷字符串,在循環(huán)體中用substr()函數(shù)從后向前截取一個(gè)個(gè)字符,并拼接成新字符串,語法“$r='';for($i=字符串長度-1;$i>=0;$i–){$r.=substr($str,$i,1);}”;2、直接利用strrev()函數(shù)反轉(zhuǎn)字符串,語法“strrev($str)”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php實(shí)現(xiàn)字符串反轉(zhuǎn)的兩種方法
方法1:利用for語句和substr()函數(shù)
-
使用for語句倒序遍歷字符串
-
在循環(huán)體中,使用substr()函數(shù)從后向前截取一個(gè)個(gè)字符,并拼接成新字符串
實(shí)現(xiàn)代碼:
<?php header('content-type:text/html;charset=utf-8'); $str="123456789"; echo "字符串反轉(zhuǎn)前:<br>"; var_dump($str); $result = ''; $len = strlen($str);//獲取字符串長度 for ($i = $len-1; $i>=0; $i--){ $result.= substr($str,$i,1); } echo "字符串反轉(zhuǎn)后:<br>"; var_dump($result); ?>
方法2:直接利用strrev()函數(shù)
strrev()是字符串反轉(zhuǎn)函數(shù),可以反轉(zhuǎn)字符串,返回已反轉(zhuǎn)的字符串。
<?php header('content-type:text/html;charset=utf-8'); $str="A123456789B"; echo "字符串反轉(zhuǎn)前:<br>"; var_dump($str); $result = strrev($str); echo "字符串反轉(zhuǎn)后:<br>"; var_dump($result); ?>
說明:
substr() 函數(shù)可以從字符串的指定位置截取一定長度的字符,這段被截取的字符可稱為“子串”或者“子字符串”,其語法格式如下:
substr($string, $start [, $length])
參數(shù)說明如下:
- $string:需要截取的字符串,該字符串至少含有一個(gè)字符;
- $start:截取字符串的起始位置;
- 如果 $start 是非負(fù)數(shù),那么字符串將從 $string 的第 $start 個(gè)字符處開始截取,$start 從 0 開始計(jì)算。例如在字符串“abcdef”中,在 0 位置的字符是“a”,在 2 位置的字符串是 “c” 等等;
- 如果 $start 是負(fù)數(shù),那么字符串將從 $string 結(jié)尾處向前數(shù)第 $start 個(gè)字符開始,$start 從 -1 開始計(jì)算。例如在字符串“abcdef”中,在 -1 位置的字符是“f”,在 -3 位置的字符是“d”等等;
- 如果 $string 的長度小于 $start,將返回 FALSE。
- $length:可選參數(shù),表示截取字符串的長度。
- 如果 $length 為正數(shù),那么字符串將從 $start 位置向后截取最多 $length 個(gè)字符;
- 如果 $length 為負(fù)數(shù),那么 $string 末尾的 $length 個(gè)字符將會(huì)被省略(若 $start 是負(fù)數(shù)則從字符串尾部算起);
- 如果 $length 的值為 0,F(xiàn)ALSE 或 NULL,那么將返回一個(gè)空字符串;
- 如果沒有提供 $length,那么返回的子字符串將從 $start 位置開始直到字符串的結(jié)尾。
推薦學(xué)習(xí):《PHP視頻教程》