两种剔除方法:1、利用substr()函数,只需要将第二个参数设置为0,第三个参数设置为“-3”即可,语法“substr($str,0,-3)”。2、利用substr_replace()函数,只需要将第2个参数设置为空字符串,第3个参数设置为“-3”即可,语法“substr_replace($str,"",-3)”。

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

php剔除字符串后三位的方法

方法1:利用substr()函数剔除

substr() 函数返回字符串的一部分。

substr(string,start,length)
参数描述
string必需。规定要返回其中一部分的字符串。
start必需。规定在字符串的何处开始。
  • 正数 - 在字符串的指定位置开始
  • 负数 - 在从字符串结尾的指定位置开始
  • 0 - 在字符串中的第一个字符处开始
length可选。规定要返回的字符串长度。默认是直到字符串的结尾。
  • 正数 - 从 start 参数所在的位置返回
  • 负数 - 从字符串末端返回

只需要将该函数的第二个参数设置为0,第三个参数设置为负值(-3)即可。

<?php
header('content-type:text/html;charset=utf-8');   
$str = "hello123";
echo "原字符串:".$str."<br>";
echo "删除后3个字符:".substr($str,0,-3);
?>

1.png

方法2:利用substr_replace()函数剔除

substr_replace()函数可以从字符串指定位置开始替换指定个数的字符。

substr_replace(string,replacement,start,length)
参数描述
string必需。规定要检查的字符串。
replacement必需。规定要插入的字符串。
start必需。规定在字符串的何处开始替换。
  • 正数 - 在字符串的指定位置开始
  • 负数 - 在从字符串结尾的指定位置开始
  • 0 - 在字符串中的第一个字符处开始
length可选。规定要替换多少个字符。默认是与字符串长度相同。
  • 正数 - 被替换的字符串长度
  • 负数 - 从字符串末端开始的被替换字符数
  • 0 - 插入而非替换
  • substr_replace() 在字符串 string 的副本中将由 start 和可选的 length 参数限定的子字符串使用 replacement 进行替换。

  • 如果 start 为正数,替换将从 string 的 start 位置开始。如果 start 为负数,替换将从 string 的倒数第 start 个位置开始。

  • 如果设定了 length 参数并且为正数,就表示 string 中被替换的子字符串的长度。如果设定为负数,就表示待替换的子字符串结尾处距离 string 末端的字符个数。如果没有提供此参数,那么默认为 strlen(string)(字符串的长度)。当然,如果 length 为 0,那么这个函数的功能为将 replacement 插入 string 的 start 位置处。

只需要将该函数的第2个参数设置为空字符串,第3个参数设置为负值(-N)即可,会从字符串倒数第N个字符开始将剩下的全部字符替换为空字符串,即去除字符串后N位字符。

而想要去除后3位,就将N设置为3。

<?php
header('content-type:text/html;charset=utf-8');   
$str = 'hello world!';
echo "原字符串:".$str."<br><br>";
$replace = '';
echo "替换后3位字符:".substr_replace($str, $replace,-3);
?>

2.png


php怎么剔除字符串后三位