PHP substr()函数详解,PHP截取字符串。

这篇具有很好参考价值的文章主要介绍了PHP substr()函数详解,PHP截取字符串。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》

substr() 可以「截取」字符串。

语法

string substr( $str, start, length);

参数

  • $str :被截取的字符串。
  • start :开始截取的位置。
  • length :截取的长度。

返回值

  • 截取成功,就返回截取的字符串
  • start 超过字符串长度,就返回 false
  • start length 设置成不合理的截取范围,就返回空字符串

一、截取字符串

1)字符串的「索引」从0开始,「空格」也算一个字符。

实例1:从左边第6个字符开始,往右截取4个字符。

echo substr('0123456789',6,4).PHP_EOL;
echo substr('01234 6789',6,4);

输出:

6789
6789

2) start length 可以为负数,负数就是相反的意思。

实例2:从右边第6个字符开始,往右截取4个字符。

echo substr('9876543210',-6,4);

输出:

5432

实例3:从左边第6个字符开始,截取到右边第3个字符。

echo substr('0123456789321',6,-3);

输出:

67893

实例4:从右边第6个字符开始,截取到右边第4个字符。

echo substr('9876543210',-6,-4);

输出:

54

二、截取中文字符串

「英文」字符占1个字节,UTF8编码的「中文」占3个字节,GB2321编码的中文占2个字节。

截取中文时,一个(UTF8编码)中文要当做3个字符串来截取, start length 的值得是「3的倍数」,否则会截取到乱码。

实例:

echo substr('零一二三四五六七八九',0,3).PHP_EOL;
echo substr('零一二三四五六七八九',3,3).PHP_EOL;
echo substr('零一二三四五六七八九',3,1);

输出:

零
一
�

三、length的特殊值

1) length 可以省略,默认截取到字符串「末尾」

实例:

echo substr('0123',1).PHP_EOL;
echo substr('0123',-1);

输出:

123
3

2) length 为 0,null,false 时,表示截取 0 个字符, substr() 会返回空字符串。

实例:

var_dump(substr('0123',1,0));
var_dump(substr('0123',1,null));
var_dump(substr('0123',1,false));

输出:

string(0) ""
string(0) ""
string(0) ""

四、start的特殊值

1) start 超过字符串「长度」时,会返回false。

实例:

var_dump(substr('0123',11));

输出:

bool(false)

2) start 可以是数值型字符串,但内容必须是「纯数字」,否则会报错。

实例:

var_dump(substr('0123','0'));

输出:

string(4) "0123"

3) start 可以是「布尔类型」( true=1;false=0 )。

实例:

var_dump(substr('0123',true));
var_dump(substr('0123',false));

输出:

string(3) "123"
string(4) "0123"

4) start 包含运算符时,会先「运算」,再将运算结果「赋值」 start

实例:

var_dump(substr('0123',1+1));
var_dump(substr('0123',1*2));
var_dump(substr('0123',~~2));
var_dump(substr('0123',1&1));

输出:

string(2) "23"
string(2) "23"
string(2) "23"
string(3) "123"

5) start 为十六进制时,会自动转换为0进制。

实例:11的十六进制是 0xB

var_dump(substr('0123456789abcde',0xB));

输出:文章来源地址https://www.toymoban.com/news/detail-656256.html

string(4) "bcde"

到了这里,关于PHP substr()函数详解,PHP截取字符串。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • php字符串截取

    1、使用 strstr(\\\"原始字符\\\",\\\"指定的字符\\\",布尔值) 布尔值为可选,为 true 返回第一次出现之前的字符串部分,默认为false 返回 返回第一次出现之前的字符串部分 strchr与strstr一样,strstr不区分大小写。 该方法输出指定字符之后的内容时会包含指定的字符串一起输出 1、 substr或指

    2024年02月08日
    浏览(40)
  • PHP strlen()函数详解,PHP获取字符串长度

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 strlen() 可以返回 「字符串」 的 「长度」 。 语法 参数 $str :需要计算长度

    2024年02月15日
    浏览(32)
  • Oracle——SUBSTR()截取字符串,INSTR()查找字符串

    使用语法:SUBSTR( string , start , [length]) string :需要截取的字符串。 start :  起始位置, -3 表示从倒数第三个字符开始, 从左往右 截取。 length:截取长度(默认截取到末尾)。 使用语法:INSTR( string , str , [start],[which]) string :源字符串。 str :查找的子字符串(可以

    2024年02月12日
    浏览(33)
  • Java使用substring()方法截取字符串

    substring()方法是java String类的常用方法,作用是返回字符串的子字符串。 beginIndex是起始索引值(包括),从0开始。该方法将字符串从beginIndex位置开始截取,一直到字符串末尾。 示例: 输出: beginIndex是起始索引值(包括),从0开始,endIndex是结束索引值(不包括)。该方法

    2024年02月13日
    浏览(41)
  • PHP is_numeric()函数详解,PHP判断变量是否为数字或数字字符串,is_numeric()绕过

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 is_numeric() 可以检测 「变量」 是否为 「数字」 或数字字符串。 语法 参数

    2024年02月11日
    浏览(42)
  • PHP 字符串常用函数

    strlen 获取指定字符串长度 语法: strpos 用于查找指定字符串,在源字符串 首次 出现的位置(下标),如果没找到则返回 false 注: 大小写不敏感 语法: strrpos 用于查找指定字符串,在源字符串 最后 出现的位置(下标),如果没找到则返回 false 注: 大小写不敏感 语法: st

    2024年02月06日
    浏览(35)
  • Java中String字符串截取几种方法(substring,split)

    这是一个Java中的String的基础用法的演示。 下面通过代码对大家进行讲解 substring 这里用来ndexOf,lastIndexOf这两个函数进行字符定位,一个是从前往后寻找第一个,一个是从后往前寻找第一个。 split split本身就是分割的意思,里面传入一个字符串,通过这个字符串进行分割,也是

    2024年02月05日
    浏览(47)
  • PHP8的字符串操作1-PHP8知识详解

    字符串是php中最重要的数据之一,字符串的操作在PHP编程占有重要的地位。在使用PHP语言开发web项目的过程中,为了实现某些功能,经常需要对某些字符串进行特殊的处理,比如字符串的格式化、字符串的连接与分割、字符串的比较、查找等一系列操作。用户和系统的交互也

    2024年02月13日
    浏览(47)
  • MySQL 字符串截取函数

    MySQL 字符串截取函数:left(), right(), substring(), substring_index()、 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) mysql select left(\\\'apple.com\\\', 3); +-------------------

    2024年02月07日
    浏览(37)
  • Python截取字符串(字符串切片)方法详解

    从本质上讲,字符串是由多个字符构成的,字符之间是有顺序的,这个顺序号就称为索引(index)。Python 允许通过索引来操作字符串中的单个或者多个字符,比如获取指定索引处的字符,返回指定字符的索引值等。 知道字符串名字以后,在方括号[ ]中使用索引即可访问对应的

    2024年02月01日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包