php反转字符串函数示例(非内置函数)

发布时间:2020-03-17编辑:脚本学堂
php非内置函数反转字符串的实现代码,设计一个函数,实现字符串单词反转,自定义reversalWord函数实现字符串反转效果,需要的朋友参考下。

php面试题
设计一个函数,实现字符串单词反转。

例如:
输入 My name is Tom,则输出 Tom is name My。
不能使用split、explode之类的高级字符串处理函数。
附,详细注释说明。

完整代码:
 

复制代码 代码示例:
<?php
/**
* 字符串反转
*/
//反转函数
function reversalWord($str)
{
//字符串长度
$strLen=strlen($str);
//数组开始位置放入字符串的长度
$arr[]=$strLen;
//倒序记录所有分割单词的位置,如空格标点符号等并存入数组。
for($i=$strLen-1;$i>=0;$i--)
{
if($str[$i]==" "||$str[$i]===","||$str[$i]==="."||$str[$i]==="!")
{
//记录单词开始位置
$arr[]=$i+1;
//记录符号开始位置
$arr[]=$i;
}
}
//数组结束位置放入字符串起始位置
$arr[]=0;
//循环读取数组信息
for($j=1;$j<count($arr);$j++)
{
//计算每个单词或符号的开始与结束位置后循环读取信息并累加
for($k=$arr[$j];$k<$arr[$j-1];$k++)
{
$l.=$str[$k];//累加信息
}
}
return $l;//返回最终值
}
$str="My name is Zhenyang Wang. Nice to meet you!";
//接收反转后的字符串
$result=reversalWord($str);
echo "原始字符串:$str";
echo "<br />";
echo "反转字符换:$result";
?>