首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在PHP中从数组创建逗号分隔的列表?

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

Stack Overflow用户
提问于 2010-03-13 03:23:35
回答 9查看 228.1K关注 0票数 124

我知道如何使用foreach遍历数组的项并附加一个逗号,但是去掉最后一个逗号总是很痛苦的。有没有一种简单的PHP方法可以做到这一点?

代码语言:javascript
复制
$fruit = array('apple', 'banana', 'pear', 'grape');

最终我想

代码语言:javascript
复制
$result = "apple, banana, pear, grape"
EN

回答 9

Stack Overflow用户

发布于 2014-10-22 15:15:08

and结尾的结果:

代码语言:javascript
复制
$titleString = array('apple', 'banana', 'pear', 'grape');
$totalTitles = count($titleString);
if ($totalTitles>1) {
    $titleString = implode(', ', array_slice($titleString, 0, $totalTitles-1)) . ' and ' . end($titleString);
} else {
    $titleString = implode(', ', $titleString);
}

echo $titleString; // apple, banana, pear and grape
票数 9
EN

Stack Overflow用户

发布于 2014-02-05 22:46:46

与Lloyd的答案类似,但适用于任何大小的数组。

代码语言:javascript
复制
$missing = array();
$missing[] = 'name';
$missing[] = 'zipcode';
$missing[] = 'phone';

if( is_array($missing) && count($missing) > 0 )
        {
            $result = '';
            $total = count($missing) - 1;
            for($i = 0; $i <= $total; $i++)
            { 
              if($i == $total && $total > 0)
                   $result .= "and ";

              $result .= $missing[$i];

              if($i < $total)
                $result .= ", ";
            }

            echo 'You need to provide your '.$result.'.';
            // Echos "You need to provide your name, zipcode, and phone."
        }
票数 4
EN

Stack Overflow用户

发布于 2012-11-08 22:56:08

我更喜欢在FOR循环中使用IF语句来检查以确保当前迭代不是数组中的最后一个值。如果不是,请添加逗号

代码语言:javascript
复制
$fruit = array("apple", "banana", "pear", "grape");

for($i = 0; $i < count($fruit); $i++){
    echo "$fruit[$i]";
    if($i < (count($fruit) -1)){
      echo ", ";
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2435216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档