如何使用PHP从字符串中删除最后一个逗号?

JoJ*_*oJo 90 php string substr

您好我使用循环从我的数据库中获取值,我的结果如下:

'name', 'name2', 'name3',
Run Code Online (Sandbox Code Playgroud)

我希望这样:

'name', 'name2', 'name3'
Run Code Online (Sandbox Code Playgroud)

我想删除循环的最后一个值后的逗号.

谢谢

And*_*er2 197

使用rtrim功能

rtrim($my_string, ',');
Run Code Online (Sandbox Code Playgroud)

第二个参数表示要删除的字符.

  • 还要确保逗号后面没有任何尾随空格,否则会失败,或者执行rtrim(trim($ my_string),','). (21认同)
  • 这在末尾添加逗号的循环中不起作用,因为它将删除所有逗号。 (3认同)

Boa*_*oaz 25

尝试:

$string = "'name', 'name2', 'name3',";
$string = rtrim($string,',');
Run Code Online (Sandbox Code Playgroud)


Vij*_*S91 14

试试以下代码:

$my_string = "'name', 'name2', 'name3',";
echo substr(trim($my_string), 0, -1);
Run Code Online (Sandbox Code Playgroud)

使用此代码删除字符串的最后一个字符.


小智 10

您可以使用substr函数删除它.

$t_string = "'test1', 'test2', 'test3',";
echo substr($t_string, 0, -1);
Run Code Online (Sandbox Code Playgroud)


小智 7

rtrim 功能

rtrim($my_string,',');
Run Code Online (Sandbox Code Playgroud)

第二个参数表示要从右侧删除逗号.


Owa*_*lam 6

起初,我尝试没有空格rtrim($arraynama,",");,但结果无效。

然后,我添加了一个空格并获得了有效的结果:

$newarraynama=rtrim($arraynama,", ");
Run Code Online (Sandbox Code Playgroud)


小智 6

为此,最好使用内爆。内爆很简单而且很棒:

    $array = ['name1', 'name2', 'name3'];
    $str = implode(', ', $array);
Run Code Online (Sandbox Code Playgroud)

输出:

    name1, name2, name3
Run Code Online (Sandbox Code Playgroud)


San*_*hra 5

使用 rtrim()

rtrim($string,',');
Run Code Online (Sandbox Code Playgroud)