如何删除我的字符串中的最后一个逗号?

时间:2015-03-06 03:12:27

标签: php arrays string

我一直在尝试使用substr,rtrim,并且它会一直删除所有逗号。如果它没有显示出来的话。所以我基本上被困住了,需要一些帮助..会不会被批评。

        if(is_array($ids)) {
        foreach($ids as $id) {
            $values = explode(" ", $id);
            foreach($values as $value) {
                $value .= ', ';
                echo ltrim($value, ', ') . '<br>';

            }
        }
    }

4 个答案:

答案 0 :(得分:2)

我猜你正在尝试使用一系列空格分隔的id并将其展平为逗号分隔的id列表。

如果这是正确的,你可以这样做:

$arr = [
    'abc def ghi',
    'jklm nopq rstu',
    'vwxy',
];
$list = implode(', ', explode(' ', implode(' ', $arr)));
echo $list;

输出:

abc, def, ghi, jklm, nopq, rstu, vwxy

答案 1 :(得分:0)

通过rtrim更改ltrim:

  

ltrim - 从字符串的开头删除空格(或其他字符)

     

rtrim - 从字符串末尾删除空格(或其他字符)

<?php

$ids = Array ( 1,2,3,4 ); 
$final = '';

        if(is_array($ids)) {
        foreach($ids as $id) {
            $values = explode(" ", $id);
            foreach($values as $value) {
                $final .= $value . ', ';
            }

        }

        echo rtrim($final, ', ') . '<br>';
        echo substr($final, 0, -2) . '<br>'; //other solution
    }
?>

答案 2 :(得分:0)

使用 trim()功能。

好吧,如果你有这样的字符串

 $str="foo, bar, foobar,";

使用此代码删除最后一个逗号

<?Php
$str="foo, bar, foobar,";
$string = trim($str, " ,");
echo $string;

输出:foo,bar,foobar

答案 3 :(得分:0)

如果您的阵列看起来像;

[0] => 1,
[1] => 2,
[2] => 3,
...

以下内容应该足够(不是最佳解决方案);

$string = '';  // Create a variable to store our future string.
$iterator = 0; // We will need to keep track of the current array item we are on.

if ( is_array( $ids ) ) 
{
   $array_length = count( $ids ); // Store the value of the arrays length

   foreach ( $ids as $id ) // Loop through the array
   {
      $string .= $id; // Concat the current item with our string

      if ( $iterator >= $array_length ) // If our iterator variable is equal to or larger than the max value of our array then break the loop.
        break;

      $string .= ", "; // Append the comma after our current item.
      $iterator++; // Increment our iterator variable

   }
}

echo $string; // Outputs "1, 2, 3..."