php能过滤字符串的空格。3种过滤方法:1、用str_replace()过滤所有空格,查找全部空格并将其替换为空字符,语法“str_replace(" ","",字符串)”;2、用preg_replace()配合正则表达式过滤所有空格,语法“preg_replace('/\s+/','',字符串)”;3、用trim()过滤字符串开头和结尾的空格,语法“trim(字符串)”。

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

PHP过滤字符串空格,是PHP面试过程中常见的基础问题之一,也是我们日常项目开发中,需要掌握的PHP基础知识点。那么PHP怎么过滤字符串空格?下面给大家介绍几种方法。

方法1、使用 str_replace() 函数过滤所有空格

我们使用内置函数 str_replace() 来替换字符串或数组中的子字符串。替换后的字符串作为一个参数传递。使用该函数的正确语法如下。

str_replace($searchString, $replaceString, $originalString, $count);

内置函数 str_replace() 有四个参数。它的详细参数如下

参数
说明
$searchString强制它是我们要查找和替换的子字符串或数组
$replaceString强制它是我们要放在 $searchString 的位置的字符串。函数将检查 $searchString 的出现情况,并用 $replaceString 替换。该函数将检查 $searchString 的出现情况,然后用 $replaceString 替换它。它也可以是一个 array
$originalString强制它是原始的字符串,我们想从中找到一个子字符串或一个字符来替换。
$count可选它告诉人们对 $originalString 进行替换的总次数

这个函数返回所有替换后得到的最终字符串。

下面的程序显示了我们如何使用 str_replace() 函数从给定的字符串中删除所有空格。

<?php 
header("Content-type:text/html;charset=utf-8");
$searchString = " ";
$replaceString = "";
$originalString = "This is a programming tutorial"; 
 
$outputString = str_replace($searchString, $replaceString, $originalString); 
echo "原字符串:".$originalString."<br>";  
echo "去除空格后的字符串:".$outputString; 
  
?>

1.png

我们传递了一个空格字符作为 $searchString 和一个空字符串作为 $replaceString。输出将是没有空格的字符串。

现在,如果我们传入 $count 参数,函数将告诉我们这个字符串的替换次数。

<?php 
header("Content-type:text/html;charset=utf-8");
$searchString = " ";
$replaceString = "";
$originalString = "This is a programming tutorial"; 
 
$outputString = str_replace($searchString, $replaceString, $originalString, $count); 
echo "原字符串:".$originalString."<br>";  
echo "去除空格后的字符串:".$outputString."<br>"; 
echo "替换字数:".$count; 
?>

2.png

方法2、使用 preg_replace() 函数过滤所有空格

也可以使用 preg_replace() 函数来删除字符串中的所有空格。这个函数不仅可以删除空格字符,还可以删除字符串中的制表符。使用这个函数的正确语法如下。

preg_replace($regexPattern, $replacementVar, $original, $limit, $count)

函数 preg_replace() 接受五个参数. 它的详细参数如下

参数
说明
$regexPattern强制它是我们将在原始字符串或数组中搜索的模式
$replacementVar强制它是我们用来替换搜索值的字符串或数组
$original强制它是一个字符串或数组,我们要从其中找到值并替换它。
$limit可选这个参数限制了替换的数量
$count可选这个参数告诉了我们对原始字符串或数组进行替换的总次数

我们将使用模式 /\s+/ 来查找空格。从字符串中删除空格的程序如下。

<?php 
header("Content-type:text/html;charset=utf-8");
$originalString = "This is a programming tutorial"; 

$outputString = preg_replace('/\s+/', '', $originalString); 

echo "原字符串:".$originalString."<br>";  
echo "去除空格后的字符串:".$outputString."<br>"; 
?>

3.png

我们知道这个字符串的总替换次数是 4,现在我们将限制替换次数。

<?php 
header("Content-type:text/html;charset=utf-8");
$searchString = " ";
$replaceString = "";
$limit = 2;
$originalString = "This is a programming tutorial"; 
 
$outputString = preg_replace('/\s+/', '', $originalString,$limit); 
echo "原字符串:".$originalString."<br>";  
echo "去除空格后的字符串:".$outputString."<br>"; 

?>

4.png

可以看出只替换了两次。

方法3、使用trim()函数过滤字符串开头和结尾的空格

trim() 函数移除字符串两侧的空白字符或其他预定义字符。

trim(string,charlist)
参数描述
string必需。规定要检查的字符串。
charlist可选。规定从字符串中删除哪些字符。如果省略该参数,则移除下列所有字符:
  • "\0" - NULL
  • "\t" - 制表符
  • "\n" - 换行
  • "\x0B" - 垂直制表符
  • "\r" - 回车
  • " " - 空格

返回值:返回已修改的字符串。

示例:过滤字符串开头和结尾的空格

<?php 
header("Content-type:text/html;charset=utf-8");
$str = "  Hello PHP中文网   ";
$newStr = trim($str); 
echo "原字符串:".$str."。<br>";  
echo "去除空格后的字符串:".$newStr."。<br>"; 
?>

5.png


php能不能过滤字符串的空格