我很喜欢 PHP 中的 trim 函数。但是,我想我遇到了一个奇怪的障碍。我有一个名为 keys 的字符串,其中包含:“mavrick、ball、bounce、food、easy mac,”并执行这个函数

// note the double space before "bouncing"
$keys = "mavrick, ball,  bouncing, food,  easy mac, ";
$theKeywords = explode(", ", $keys);
foreach($theKeywords as $key){
  $key = trim($key);
}
echo $theKeywords[2];

然而,在这里,输出是“弹跳”而不是“弹跳”。 trim 不是在这里使用的正确函数吗?

编辑:
我的原始字符串在“bounce”之前有两个空格,出于某种原因它不想出现。
我尝试用 foreach($theKeywords as &$key) 引用它,但它抛出了一个错误。

最佳答案

问题在于您使用的是副本而不是原始值。改用引用:

$theKeywords = explode(", ", $keys);
foreach($theKeywords as &$key){
  $key = trim($key);
}
echo $theKeywords[2];

关于php - 修剪似乎不起作用 PHP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13551222/

10-09 16:12