引言
之前的文章中我们详细说了 PHP 程序中如何从数组中获取第一个元素或最后一个元素。今天我们再说一下,对于一个字符串处理的时候如何获取并删除最后一个字符。这在实际编程中都是经常遇到的家常便饭。
学习时间
假如有这样一个字符串,
a,b,c,d,e,
想要把最后一个字符逗号删除掉,该怎么办呢?
你首先想到了substr这个函数,对吧?这是手册中专门用于字符串截取的工具,我们先用这个函数实现。
echo substr('a,b,c,d,e,', 0, -1);
注意 0 和 -1 两个数。就是说,截取当前字符串,从头开始,并在倒数第一个结束。正好就是我们要的效果。
如果要兼容通用的编码格式,改用 mb_substr 就可以了。
就事论事
如果对于本文原始字符串处理而言,我们就事论事。可以使用 rtrim 进行最后一个字符串的移除,也非常方便:
echo rtrim("a,b,c,d,e,", ",");
这是需要知道最后一个字符是什么,然后进行的定向移除。不具有通用性。
换个角度
我们再换一个思路。移除最后一个字符,可以使用字符串替换的方法。将最后一个字符置空,也就达到删除的功能。使用函数 substr_replace :
substr_replace($string, "", -1)
-1 是子字符串替换开始的位置,也就是倒数第一个。
写在最后
同一个需求多种解决方案,结果相同。这就是编程的魅力,你永远有很多种方法到达目的地。
Happy coding :_)
我是 @程序员小助手 ,持续分享编程知识,欢迎关注。
领取专属 10元无门槛券
私享最新 技术干货