如何删除字符串末尾的逗号?

php
2022-08-30 07:08:41

我想删除字符串末尾的逗号。就像现在我正在使用的那样

$string = substr($string,0,-1);

但这只会删除字符串的最后一个字符。我是动态添加字符串的,所以有时字符串的末尾没有逗号。如果字符串末尾有逗号,我怎么能让PHP删除字符串末尾的逗号?


答案 1
$string = rtrim($string, ',');

此处为 rtrim 提供的文档


答案 2

这是一个经典的问题,有两种解决方案。如果要删除一个逗号(可能存在也可能不存在),请使用:

if (substr($string, -1, 1) == ',')
{
  $string = substr($string, 0, -1);
}

如果要删除行尾的所有逗号,请使用更简单的:

$string = rtrim($string, ',');

rtrim函数(以及相应的左修剪的ltrim)非常有用,因为您可以指定要删除的字符范围,即删除逗号和尾随空格,您可以编写:

$string = rtrim($string, ", \t\n");

推荐