PHP 函数 trim() 不去除字符串中间的空格

标签 php string trim

我有一些非常简单的代码,但是出了点问题。以下代码

$title = $_POST['templatename'];
$user = $_POST['username'];
$selectedcoordinates = $_POST['templatestring'];

$title = trim($title);
$user = trim($user);


$filename = $title . "_by_" . $user;

var_dump($title);
var_dump($user);
var_dump($filename);

返回这个:

string(11) "Single Tile"
string(6) "Author"
string(21) "Single Tile_by_Author" 

其中值源自 HTML 表单。为什么 "Single Tile" 没有变成 "SingleTile"

最佳答案

函数 trim() 仅删除字符串开头和结尾的空格(和控制字符,如\n)。

$title = str_replace(" ", "", trim($title));
$user = str_replace(" ", "", trim($user));

我只是想解决这个问题。因此,解决方案可能看起来很糟糕。无论如何,最好的用途是使用这种方式:

$title = str_replace(" ", "", $title);
$user = str_replace(" ", "", $user);

我删除了 trim() 函数,因为 str_replace() 完成了 trim() 的工作。

关于PHP 函数 trim() 不去除字符串中间的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21218975/

相关文章:

php - 为什么 PHPUnit 在模拟不存在的方法时默默地不返回任何内容?

PHP 警告 : array_filter() expects parameter 2 to be a valid callback, 第二个数组成员不是有效方法

r - 在 R 中修剪数据,摆脱 "*"

php mysql 命令不返回任何内容

php - 有没有办法在php页面之间共享对象?

c++ - 区分字符串格式

ListView 的 Java 字符串形成

string - 如何使用迭代器确定两个字符串在函数式风格中是否只有一个不同的字符?

mysql - 需要从 MySql 结果中修剪新行

c# - 去除位于 Dictionary 中的 List<string> 中的空格