substr函数在php中的应用

 新手 在php的学习过程中中,遇到substr()这个函数, 刚开始有点难理解,那么这个函数到底有什么功能呢?

substr()返回字符串的一部分(指定开始和长度参数);

手纸(php手册)里边是这样描述的  string substr ( string string, int start [, int length] )

括号里边的string是你要从中间取字符的内容(这个必须得有),start是开始的位置,length是所取的长度。

下边是基本的例子:

<?php

echo substr('abcdef', 1);     // bcdef
echo substr('abcdef', 1, 3);  // bcd
echo substr('abcdef', 0, 4);  // abcd
echo substr('abcdef', 0, 8);  // abcdef
echo substr('abcdef', -1, 1); // f
?>

第一个echo的substr()后边只有一个数字,这个数字就是我们描述里边的start,意思是从字符abcdef的第一位起往后取所有的字符(因为第三个参数length长度没有定义,php默认取第一位后边的所有字符,【包括第一位】),start的位数是从0位开始的,也就是0位对应的是a字符,第一位对应的是b。echo substr('abcdef',1);就是取第一位开始(也就是b,包括b)向后边取所有的字符。

第二个echo同理从第一位开始,但是只取3个长度的字符所以只有bcd

第三个echo道理是一样的,从第0位开始取,取4个长度。

第四个取得长度大于原有字符长度,所以就全取啦。

第五个echo有个负号,负号就是从后边开始数,记住从后边开始数的时候没有0的因此,-1就对应的是f 这个字符,取1个长度,那就是f了。

很好理解吧。

还有一种情况是长度为负数:

<?php
echo substr("abcdef", 0, -1);  // returns "abcde"
echo substr("abcdef", 2, -1);  // returns "cde"
echo substr("abcdef", 4, -4);  // returns ""
echo substr("abcdef", -3, -1); // returns "de"
?>

长度为负数可以理解为去掉倒数第几位以后的字符

如第一个echo 就是从第0位取起,取到abcdef,并且去掉最后一位字符f,就得到abcde.

第二个echo就同理了,从第二个(也就是c字符)取起,去掉f

而第三个有点奇怪了,显然为空字符对不对。

第四个就是从-3位(也就是d字符),-1位置的f不要,就是de了。
                                                                                                          【Haizy  原创 】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值