js和php的字符串截取函数

js有三个:slice()   substring()   substr()

一般都用substr(start,length),第一个参数是开始位置的下标  必须,可以为负数,下标-1 是指字符串中最后一个字符,下标-2 是指倒数第二个字符,以此类推;第二个参数是要截取子串的长度  可选,截取的方向都是从左往右,不会改变。

截取出来的子串包含起始位置自己

PS:字符串的索引都从0开始计起

. 空格都是字符

substring(from,until)  slice(from,until)都是从一个索引截取到另一个索引,只有当参数为负数时,他们不一样,需要强调的一点:切片不包括“until”索引值的元素

substring(0)  slice(0)都是截取整个字符串,无意义

php:

1.substr(源字符串,起始位置,[长度])-截取字符串返回部分字符串

 

  1. <?php
  2. $str ="phpddt.com";
  3. echo substr($str,2);//pddt.com
  4. echo substr($str,2,3);//pdd
  5. echo substr($str,-2);//om 负数从结尾开始取
  6. ?>

 

但是当你截取中文字符串的时候很容易出现乱码,因为一个汉字是两个字节,而一个英文字母是一个字节。解决办法如下:

2.mb_substr(),使用方法和substr相同,不过要开启php.ini里面extension=php_mbstring.dll扩展,不用担心,一般的空间商

都会开启这个扩展的。

 

  1. <?php
  2. echo mb_substr("php点点通",1,3,"UTF-8");//hp点
  3. ?>

代码如下:

1
substr(string,start,length)

其中start的参数

正数 - 在字符串的指定位置开始
负数 - 在从字符串结尾的指定位置开始
0 - 在字符串中的第一个字符处开始

猜你喜欢

转载自www.cnblogs.com/liangdong/p/10605611.html