如何在PHP中从数组创建逗号分隔的列表?

2022-08-30 07:08:46

我知道如何使用foreach循环浏览数组的项目并附加逗号,但是必须取下最后一个逗号总是很痛苦的。有没有一个简单的PHP方法来做到这一点?

$fruit = array('apple', 'banana', 'pear', 'grape');

最终我想要

$result = "apple, banana, pear, grape"

答案 1

你想为此使用内爆

结婚$commaList = implode(', ', $fruit);


有一种方法可以在没有尾随逗号的情况下附加逗号。如果您必须同时执行其他操作,则需要执行此操作。例如,也许你想引用每个水果,然后用逗号将它们全部分开:

$prefix = $fruitList = '';
foreach ($fruits as $fruit)
{
    $fruitList .= $prefix . '"' . $fruit . '"';
    $prefix = ', ';
}

另外,如果您只是以“正常”方式在每个项目后附加逗号(就像您之前所做的那样),并且您需要修剪掉最后一个项目,只需做。我看到很多人在这种情况下不必要地胡言乱语。$list = rtrim($list, ', ')substr


答案 2

这就是我一直在做的事情:

$arr = array(1,2,3,4,5,6,7,8,9);

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

echo $string;

输出:

1,2,3,4,5,6,7,8,9

现场演示:http://ideone.com/EWK1XR

编辑:根据@joseantgv的评论,您应该能够从上面的示例中删除。即:rtrim()

$string = implode(',', $arr);