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按符号截取字符串的指定部分相关推荐

  1. php 按 截取字符串,PHP按符号截取字符串的指定部分

    字符串截取在php开发中是比较常用的: 而且对于截取的需求也有很多种: 就比如说对url链接的操作:http://baijunyao.com/article/12 有时我们想截取最后一个斜杠'/'后面 ...

  2. php字符串以符号截取,PHP按符号截取字符串的指定部分的实现方法

    大家在开发中可能会遇到需要截取某一个部分的内容,方法有很多,可以使用正则,也可以用内置函数,但该如何才能尽人意呢?傲世今天就给大家开开眼. 对于截取的需求也分很多种,字符串的截取php内置函数就有很多 ...

  3. php截取多个分割符号_PHP按符号截取字符串的指定部分的实现方法

    字符串截取在php开发中是比较常用的: 而且对于截取的需求也有很多种: 有时我们想截取最后一个斜杠'/'后面的数字: 有时我们又需要截取第一个斜杠'/'前面的内容判断用户输入的url链接带不带http ...

  4. Excel中如何截取字符串中指定字符后的部分字符

    1.如何给某列属性为时间整体加一个时间值: 场景一:假如我有一个excel中的某一列如下图所示,如何将该列的时间(用B代替整列)整体加一分钟呢?方法很简单,在空白单元格填写时间格式图中A所示:复制单元 ...

  5. Java截取字符串的指定字节数长度

    由于Java字符串的length计算的是字符长度,而数据库的限制长度是字节数,为了防止报错,可以在Java程序中截取字符串的指定字节数长度 public static String getLenStr ...

  6. String截取字符串的指定字节长度

    /** TODO:截取字符串的指定字节长度 * @Author wenjing * @Date 11:02 2019/5/15 * @Param [str, bengin, end] * @retur ...

  7. Mysql截取字符串(含指定字符串)

    项目场景: 在将数据落地到数据库后,应业务需求,需要截取特定数据用作另一字段值:如:现有字段areaName值为:海南省东方市-,现想将areaName省份信息截取存到province 问题描述 网上 ...

  8. java按符号截取字符串_Java截取字符串的常见方法

    在项目中经常会遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法. 方法一:通过split() 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的性能损耗,因 ...

  9. python 分隔符截取字符串_python指定分隔符截取字符串

    python截取指定分隔符后面的字符串 例如:notifydata[1] =G20-杭州峰会放假时间 notifydata[2] =G20-杭州峰print('-'.join('G20-杭州峰会-放假 ...

  10. Java截取字符串中指定字符串之后的字符串

    String str = "/abc/def/ghi/123456"; 假设现在要截取上述字符串中的ghi/之后的内容,首先利用str.indexOf()进行定位,之后用str.s ...

最新文章

  1. 100天59万行代码_如何抽出100天的代码时间
  2. 用树莓派获取天气状况
  3. 几个常用的Linux监控脚本
  4. 1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入
  5. 在 2D 横向卷轴游戏里上下楼梯
  6. Java zip 压缩 文件夹删除,移动,重命名,复制
  7. 单手撑跨栏、两个空翻,终于看到了比人厉害的机器人
  8. 【算法竞赛学习】气象海洋预测-Task2 数据分析
  9. php修改ini文件内容,php上传大文件需要修改的php.ini配置文件
  10. HTML期末作业-旅游网页作业Html+css+Bootstarp
  11. “被”夭折的翻译——《CoffeeScript: Accelerated JavaScript Development》
  12. 基于SpringBoot的简单记账系统
  13. java计算机毕业设计网络游戏后台管理系统MyBatis+系统+LW文档+源码+调试部署
  14. 省市区三级数据-MySQL
  15. Arouter 跳转失败activityResumeTrigger: not whiteListed
  16. 由IRR看超越方程求解
  17. 行锁、间隙锁、next-key锁
  18. 用js来完成一个赛车的小游戏
  19. bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
  20. Excel如何间隔插入空白列

热门文章

  1. 科研狗工具大合集,赶紧集合看过来
  2. 两台电脑通过网线共享文件
  3. 计算机键盘锁不了怎么办,键盘锁住了怎么解锁?键盘锁死了怎么办?
  4. 年仅 28 岁就宣布从字节跳动退休?
  5. java tracert_tracert-命令小结
  6. java论文致谢_JAVA语言课程设计论文致谢范文
  7. 大学计算机信息技术课程评价,信息技术课程学习心得体会精选范文
  8. Solr中的日期/时间表示
  9. php清除手机浏览器缓存,js清除浏览器缓存的几种方法
  10. 余额宝提现测试点【杭州多测师】【杭州多测师_王sir】