总结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 ...
随机推荐
- 很小的一个函数执行时间调试器Timer
对于函数的执行性能(这里主要考虑执行时间,所耗内存暂不考虑),这里写了一个简单的类Timer,用于量化函数执行所耗时间. 整体思路很简单,就是new Date()的时间差值.我仅仅了做了一层简单的封装 ...
- 删除trigger 禁用触发器 启用触发器 查看触发器
删除trigger drop trigger 触发器名 on 在那个表上 禁用触发器 Alter Table 表名 disable trigger 触发器名 启用触发器 Alter Table 表名 ...
- Eclipse 入手配置
工欲善其事,必先利其器 在安装eclipse后进行简单的配置能够为以后的开发提高不少效率,这里慢慢先记录自己的经验. 一.编码配置 utf-8 1.worksplace: 首先设置就是workspac ...
- js分离html代码的body内外部分
//定义网页源码 str = '<!DOCTYPE html><html><head> <meta charset="UTF-8"> ...
- html--深入理解4种dom对象
这四个对象是从HTML结构中逐层深入的,分别代表了HTML结构中所有的内容: 1.Document对象 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对象使我们 ...
- 《第一行代码》Android特色开发,基于位置服务,出现的问题
手机GPS定位较慢.精度高.耗电量多,网络定位较快.精度低.耗电量少 当位置精度要求非常高的时候,使用GPS定位:一般情况下,使用网络定位. 按<第一行代码>写了一个定位程序,真机一直没有 ...
- json_decode($json, true) true什么意思
<?php $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}' ...
- [翻译]Review——The Inner Workings Of Virtual DOM
The Inner Workings Of Virtual DOM 虚拟DOM的内部工作机制 原文地址:https://medium.com/@rajaraodv/the-inner-workings ...
- #!/bin/sh & #!/bin/bash区别
在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本.目前研发送测的shell脚本中主要有以下两种方式:(1) #!/bin/sh(2) #!/bin/bash以上两种方式有什么区别? ...
- 01_java虚拟机基础入门
[Java虚拟机的基本结构] [ 1.类加载子系统 ] 负责从文件系统或者网络中加载Class信息,加载的信息存放在一块称之为方法区的内存空间. [ 2.方法区 ] 存放类信息.常量信息.常量池信息, ...