PHP按符号截取字符串的指定部分
PHP按符号截取字符串的指定部分
字符串截取在php开发中是比较常用的;
而且对于截取的需求也有很多种;
就比如说对url链接的操作:http://baijunyao.com/article/12
有时我们想截取最后一个斜杠'/'后面的数字;
有时我们又需要截取第一个斜杠'/'前面的内容判断用户输入的url链接带不带http://等等;
字符串的截取php内置函数就有很多种;
简单的写几个示例;
$str='123/456/789/abc';
PHP
Copy
截取第一个斜杠前面的内容可以这样来:
echo substr($str,0,strpos($str, '/'))
PHP
Copy
或者
$array=explode('/', $str);
echo $array[0];
// 输出 123
PHP
Copy
截取第一个斜杠后面的内容可以这样来:
echo substr($str,strpos($str,'/')+1);
//输出 456/789/abc
PHP
Copy
截取最后一个斜杠后面的内容可以这样来:
echo trim(strrchr($str, '/'),'/');
PHP
Copy
或者如果知道斜杠的个数
$array=explode('/', $str);
echo $array[3];
//输出 abc
PHP
Copy
但是问题来了;如果不知道有多少个斜杠呢?如果想要第二个斜杠和第三个斜杠中间的内容呢?
下面我写的这个函数就可以轻松解决如上 所有问题;
/**
* 按符号截取字符串的指定部分
* @param string $str 需要截取的字符串
* @param string $sign 需要截取的符号
* @param int $number 如是正数以0为起点从左向右截 负数则从右向左截
* @return string 返回截取的内容
*/
function cut_str($str,$sign,$number){
$array=explode($sign, $str);
$length=count($array);
if($number<0){
$new_array=array_reverse($array);
$abs_number=abs($number);
if($abs_number>$length){
return 'error';
}else{
return $new_array[$abs_number-1];
}
}else{
if($number>=$length){
return 'error';
}else{
return $array[$number];
}
}
}
PHP
Copy
示例:
echo cut_str($str,'/',0); //输出 123
echo cut_str($str,'/',2); //输出 789
echo cut_str($str,'/',-1);//输出 abc
echo cut_str($str,'/',-3);//输出 456
PHP按符号截取字符串的指定部分相关推荐
- php 按 截取字符串,PHP按符号截取字符串的指定部分
字符串截取在php开发中是比较常用的: 而且对于截取的需求也有很多种: 就比如说对url链接的操作:http://baijunyao.com/article/12 有时我们想截取最后一个斜杠'/'后面 ...
- php字符串以符号截取,PHP按符号截取字符串的指定部分的实现方法
大家在开发中可能会遇到需要截取某一个部分的内容,方法有很多,可以使用正则,也可以用内置函数,但该如何才能尽人意呢?傲世今天就给大家开开眼. 对于截取的需求也分很多种,字符串的截取php内置函数就有很多 ...
- php截取多个分割符号_PHP按符号截取字符串的指定部分的实现方法
字符串截取在php开发中是比较常用的: 而且对于截取的需求也有很多种: 有时我们想截取最后一个斜杠'/'后面的数字: 有时我们又需要截取第一个斜杠'/'前面的内容判断用户输入的url链接带不带http ...
- Excel中如何截取字符串中指定字符后的部分字符
1.如何给某列属性为时间整体加一个时间值: 场景一:假如我有一个excel中的某一列如下图所示,如何将该列的时间(用B代替整列)整体加一分钟呢?方法很简单,在空白单元格填写时间格式图中A所示:复制单元 ...
- Java截取字符串的指定字节数长度
由于Java字符串的length计算的是字符长度,而数据库的限制长度是字节数,为了防止报错,可以在Java程序中截取字符串的指定字节数长度 public static String getLenStr ...
- String截取字符串的指定字节长度
/** TODO:截取字符串的指定字节长度 * @Author wenjing * @Date 11:02 2019/5/15 * @Param [str, bengin, end] * @retur ...
- Mysql截取字符串(含指定字符串)
项目场景: 在将数据落地到数据库后,应业务需求,需要截取特定数据用作另一字段值:如:现有字段areaName值为:海南省东方市-,现想将areaName省份信息截取存到province 问题描述 网上 ...
- java按符号截取字符串_Java截取字符串的常见方法
在项目中经常会遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法. 方法一:通过split() 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的性能损耗,因 ...
- python 分隔符截取字符串_python指定分隔符截取字符串
python截取指定分隔符后面的字符串 例如:notifydata[1] =G20-杭州峰会放假时间 notifydata[2] =G20-杭州峰print('-'.join('G20-杭州峰会-放假 ...
- Java截取字符串中指定字符串之后的字符串
String str = "/abc/def/ghi/123456"; 假设现在要截取上述字符串中的ghi/之后的内容,首先利用str.indexOf()进行定位,之后用str.s ...
最新文章
- 100天59万行代码_如何抽出100天的代码时间
- 用树莓派获取天气状况
- 几个常用的Linux监控脚本
- 1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入
- 在 2D 横向卷轴游戏里上下楼梯
- Java zip 压缩 文件夹删除,移动,重命名,复制
- 单手撑跨栏、两个空翻,终于看到了比人厉害的机器人
- 【算法竞赛学习】气象海洋预测-Task2 数据分析
- php修改ini文件内容,php上传大文件需要修改的php.ini配置文件
- HTML期末作业-旅游网页作业Html+css+Bootstarp
- “被”夭折的翻译——《CoffeeScript: Accelerated JavaScript Development》
- 基于SpringBoot的简单记账系统
- java计算机毕业设计网络游戏后台管理系统MyBatis+系统+LW文档+源码+调试部署
- 省市区三级数据-MySQL
- Arouter 跳转失败activityResumeTrigger: not whiteListed
- 由IRR看超越方程求解
- 行锁、间隙锁、next-key锁
- 用js来完成一个赛车的小游戏
- bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- Excel如何间隔插入空白列