总结PHP删除字符串最后一个字符的三种方法
一、前言
从数据库中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 — 删除字符串末端的空白字符(或者其他字符)
使用感受:
简直就是为了这个需求准备的!
注意:以上方法对字符串进行操作后,返回操作结果,并不对字符串本身进行改变!记得使用一个变量进行接收结果!
三、总结
以上就是PHP删除字符串最后一个字符的几种方法总结,大家都学会了吗?希望这篇文章对大家的学习或者工作能带来一定的帮助。
总结PHP删除字符串最后一个字符的三种方法的更多相关文章
- PHP程序中删除字符串最后一个字符的三种方法
常见的语法格式: foreach ($arr as $key => $value) {$arr_str = $arr['x_id'] . ',' . $arr_str;} 假设字符数组 $arr ...
- String空格删除和java删除字符串最后一个字符的几种方法
1. String.trim()trim()是去掉首尾空格2.str.replace(" ", ""); 去掉所有空格,包括首尾.中间复制代码 代码如下:Str ...
- JS 删除字符串最后一个字符的几种方法
字符串:string s = "1,2,3,4,5," 目标:删除最后一个 "," 方法:1.用的最多的是Substring,这个也是我一直用的 s=s.Sub ...
- C#删除字符串最后一个字符的几种方法
字符串:string s = "1,2,3,4,5,"目标:删除最后一个 "," 方法:1.用的最多的是Substring,这个也是我一直用的s = s.Sub ...
- C#中删除字符串最后一个字符的几种方法
转载地址 偶然看到的,记录一下,以免忘记 字符串:string s = "1,2,3,4,5," 目标:删除最后一个 "," 方法: 1.用的最多的是Su ...
- java删除字符串最后一个字符的几种方法
偶然看到的,记录一下,以免忘记 字符串:string s = "1,2,3,4,5," 目标:删除最后一个 "," 方法: 1.用的最多的是Substri ...
- java 删除字符串最后一个字符的几种方法
偶然看到的,记录一下,以免忘记 字符串:string s = "1,2,3,4,5," 目标:删除最后一个 "," 方法: 1.用的最多的是Substri ...
- python每次处理一个字符的三种方法
python每次处理一个字符的三种方法 a_string = "abccdea" print 'the first' for c in a_string: print ord(c) ...
- C# VI: 删除字符串中指定字符的几种方法
本文基于Stackoverflows上以下几个Question: Fastest way to remove chars from string (http://stackoverflow.com/q ...
随机推荐
- sql 递归 STUFF
select distinct fm_id, ,,'') AS SO_Nums from [dbo].[t_BADItems] its 表内一对多 的关系查询
- Javaee的Dao层的抽取
有时候我们在实现不同功能的时候回看到很多的Dao层的增加.修改.删除.查找都很相似,修改我们将他们提取BaseDao 一.提取前 1. 提取前的LinkDao层: public interface L ...
- eclipse切换workspace后配置问题
正常情况下如果切换了eclipse的workspace后,需要重新配置eclipse,但是可以将原工作目录中的.metadata/.plugins/org.eclipse.core.runtime拷贝 ...
- 网站大于10M的视频不能播放
IIS配置的网站,添加了几个mp4视频,有个可以正常播放,有的却不加载不出来,提示错误: net::ERR_CONNECTION_ABORTED 网上有文章说是由于安全狗bug导致,下载安装一个补丁覆 ...
- Web前端面试指导(十一):样式导入有哪些方式?
样式导入方式 link import 使用方式 link的使用 <link href="index.css" rel="stylesheet"> i ...
- Mavn 使用介绍
1 Maven介绍 1.1 项目开发中遇到的问题 1.都是同样的代码,为什么在我的机器上可以编译执行,而在他的机器上就不行? 2.为什么在我的机器上可以正常打包,而配置管理员却打不出来? 3.项目 ...
- Data Flow ->> Multiple Excel Sheet Loaded Into One Table
同个Excel文件中多个Sheet中的数据导入到单张表中,参考了文章:http://www.cnblogs.com/biwork/p/3478778.html 思路: 1) ForEach Loop组 ...
- c# 命名空间之System.IO(继承关系)
System.IO 命名空间包含允许:读写文件.数据流的类型以及提供基本文件和目录支持的类型. 在这个命名空间中主要的类有: 字节流:Stream.BufferedStream.MemoryStrea ...
- 7za 命令解析
转载自:blog.chinaunix.net/uid-26330274-id-3055157.html 7za 命令讲的很详细,收藏下来. 命令行压缩解压一 7z 1) 简介 7z,全称7-Zip ...
- My SQL 和SQL Server区别
MySQL 与SQL Server区别 今天了解了二者区别,整理网上查阅资料,总结列举如下: MSSQL == SQL server 是sybase与微软合作时期的产物. 对于程序开发人员而言,目前使 ...