分享心得,是为了让你少走弯路。 经评论中一位仁兄提醒,发现又一神器join()函数
join()函数可把数组元素直接组合为一个字符串
语法格式:join(separator,array)
实例:
$arr = array('Hello','World!','I','love','Shanghai!');
echo join(" ",$arr);
结果输出:Hello World! I love Shanghai!
另外:
join() 函数是 implode() 函数的别名。
join() 函数接受两种参数顺序颠倒。
但是由于历史原因,explode() 是不行的,separator 参数必须在 string 参数之前。
以下为原文|
从数据库中select()读取一对多的信息时,经常需要将取出的数组用某个特定的字符分割,然后拼接成字符串。
常见的语法格式:
foreach ($arr as $key => $value) { $arr_str = $arr['x_id'] . ',' . $arr_str; }
假设字符数组 $arr 中的字符分别为
arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
则,拼接后的 $arr_str 字符串为 a,b,c, 这个时候,就需要我们对最后一位字符','进行删除处理。
PHP中删除最后一位字符的方法总结:
方法一:substr($arr_str,0,strlen($arr_str)-1);
详解:
substr()函数语法:string substr ( string $string , int $start [, int $length ] )
strlen()函数语法:int strlen ( string $string )
本例原理:
首先使用strlen()函数获取字符串$arr_str的长度,然后使用substr()函数对$arr_str进行截取,截取至$arr_str的倒数第二位。这样就把最后的","去掉了。
使用感受:
不推荐,php中还有更简洁更好用的方式!
方法二:substr($arr_str, 0, -1)
详解:直接使用substr()函数倒序裁掉最后一位字符;
(刚才为什么不说!)呵呵~~
使用感受:还是很合适的~~不过,首先你要确定字符串中一定有内容,且最后一位一定不要!
方法三:rtrim($arr_str, ",")
详解:
rtrim()函数语法:string rtrim ( string $str [, string $character_mask ] )
rtrim — 删除字符串末端的空白字符(或者其他字符)
使用感受:
简直就是为了这个需求准备的!
特别注意!!!
以上方法对字符串进行操作后,返回操作结果,并不对字符串本身进行改变!记得使用一个变量进行接收结果!!别问我为什么知道...还我浪费的十五分钟。。。
欢迎留言补充~~~
最后
壮士留步!看完了点个赞噻~!