今天就跟大家聊聊有關(guān)PHP中怎么顛倒字符串順序,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)公司主營臨武網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件定制開發(fā),臨武h5重慶小程序開發(fā)搭建,臨武網(wǎng)站營銷推廣歡迎臨武等地區(qū)企業(yè)咨詢
首先,php自帶了一個字符串顛倒順序的函數(shù)。
PHP字符串顛倒順序代碼:
$str = 'To Change The template';echo strrev($str);// 結(jié)果:etalpmet ehT egnahC oT
其次,使用遞歸函數(shù)實現(xiàn)。當(dāng)然效率很低!PHP字符串顛倒順序代碼:
function reverse_r($str) { if (strlen($str) > 0){ reverse_r(substr($str, 1)); } echo substr($str, 0, 1); return;}echo reverse_r($str);
第三,使用循環(huán)實現(xiàn),效率有很大的提高。PHP字符串顛倒順序代碼:
/** * 利用循環(huán)實現(xiàn)字符串逆序排列 */ function reverse_i($str){ for ($i = 1; $i < = strlen($str); $i++){ echo substr($str, -$i, 1); } return; }echo reverse_i($str);
***,使用二分法實現(xiàn),效率有更大的提高。PHP字符串顛倒順序代碼:
/** * 使用二分法來實現(xiàn)字符串顛倒順序。 */
function reverse_a($str)
{ $forNum = ceil(strlen($str)/2);
$strLen = strlen($str);
for ( $i = 1; $i < = $forNum; $i++)
{ if($i <= $strLen-$i)
{ $tmp = $str[$i-1]; $str[$i-1] =
$str[$strLen-$i]; $str[$strLen-$i]= $tmp;
}}
return $str; }
// 注:其實按照二分法來實現(xiàn),理論上效率會提升一半,但是這個涉及
//到數(shù)組的指針操作,實際效率會怎樣?
難說。echo "二分實現(xiàn):\t",reverse_a($str);
PHP連接Sql數(shù)據(jù)庫的相關(guān)方法
PHP制作動態(tài)計數(shù)器的具體使用方法
PHP刪除數(shù)組元素的具體函數(shù)介紹
PHP字符串替換的相關(guān)方法介紹
PHP簡單語法的詳細介紹
***一種PHP字符串顛倒順序的方法涉及到三個知識點:
1. ceil()函數(shù):進一法取整。如:5/4=1.25,ceil(5/4)=2,不管小數(shù)位是否大于0.5,均進一取整。
2. 字符串當(dāng)成數(shù)組訪問,如$str[0],$str[1]…可以訪問字符串$str的***個字符、第二個字符…
3. 二分法。PHP字符串顛倒順序的方法3需要循環(huán)的次數(shù)是字符串的長度,而方法4則是字符串長度的一半,所以效率會提高一倍(理論上)。
看完上述內(nèi)容,你們對PHP中怎么顛倒字符串順序有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。