微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP算法练习三:交换字符串中第一个和最后一个字符

上一篇PHP算法练习二:求n和指定数的绝对差文章中介绍了怎么求两个数的绝对差值以及差值的三倍值,今天继续PHP基础算法系列,不过不是简单的数值之间的计算了,具体往下看~

本文练习的主题是“编写一个 PHP 程序来交换给定字符串中的第一个和最后一个字符并返回新字符串”。

根据这个问题,大家动手自己先练练吧~

下面我给出我的实现方法

PHP代码如下:

<?PHP

function test($str)
{
    return strlen($str) > 1 ? substr($str, strlen($str) - 1).substr($str, 1, strlen($str) - 2). substr($str, 0, 1) : $str;

}

echo test(abcd).<br>;
echo test(a).<br>;
echo test(xy).<br>;

输出结果是:

eccfc29b3aaa3c43b6b7a3b3030bf19.png

本示例中,我们给的第一个字符串是“abcd”,那么交换第一个和最后一个字符,并输出的新字符串就是“dbca”;

给的第二个字符串是“a”,输出是a;

第三个字符串是“xy”,输出的新字符串是“yx”。

这里用到了三元运算符“?:”,以及strlen、substr函数

下面在简单介绍下两个函数的作用:

strlen()函数的作用是返回字符串的长度,语法是“strlen(string)”;其返回值是若成功则返回字符串的长度,若字符串为空则返回 0。

注:在 PHP 5.3.0 之前,该函数把数组当做字符串 Array,这样就返回一个长度为 5 的字符串,并产生一个 E_NOTICE 级别的错误

substr()函数的作用是返回字符串的一部分,语法是“substr(string,start,length)”;其返回值是返回字符串的提取部分,若失败则返回 FALSE,或者返回一个空字符串。

注:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。

最后给大家推荐《PHP教程》~快来学习吧!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐