How do I remove the last comma from a string using PHP?

I am using a loop to get values from my database and my result is like:

'name', 'name2', 'name3',

And I want it like this:

'name', 'name2', 'name3'

I want to remove the comma after the last value of the loop.

235924 次浏览

试试:

$string = "'name', 'name2', 'name3',";
$string = rtrim($string,',');

使用 rtrim函数:

rtrim($my_string, ',');

The Second parameter indicates the character to be deleted.

使用 rtrim()

rtrim($string,',');

rtrim功能

rtrim($my_string,',');

第二个参数指示从右侧删除逗号。

试试下面的代码:

$my_string = "'name', 'name2', 'name3',";
echo substr(trim($my_string), 0, -1);

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

您可以使用 substr函数来删除这个。

$t_string = "'test1', 'test2', 'test3',";
echo substr($t_string, 0, -1);

如果使用子字符串所属的多字节文本,则会影响脚本。如果是这种情况,我强烈建议在 php.ini 中启用 mb _ * 函数,或者执行 ini_set("mbstring.func_overload", 2);

$string = "'test1', 'test2', 'test3',";
echo mb_substr($string, 0, -1);

其原因很简单:

$commaseparated_string = name,name2,name3,;
$result = rtrim($commaseparated_string,',');

为了达到这个目的,最好使用“内爆”。“内爆”很简单,也很棒:

    $array = ['name1', 'name2', 'name3'];
$str = implode(', ', $array);

产出:

    name1, name2, name3

可以使用下列技术之一删除最后一个逗号(,)

解决方案一:

$string = "'name', 'name2', 'name3',";  // this is the full string or text.
$string = chop($string,",");            // remove the last character (,) and store the updated value in $string variable.
echo $string;                           // to print update string.

解决方案2:

$string = '10,20,30,';              // this is the full string or text.
$string = rtrim($string,',');
echo $string;                       // to print update string.

Solution 3:

 $string = "'name', 'name2', 'name3',";  // this is the full string or text.
$string = substr($string , 0, -1);
echo $string;

在循环期间应用的解决方案:

//1 - Using conditional:


$source = array (1,2,3);
$total = count($source);
    

$str = null;
    

for($i=0; $i <= $total; $i++){
        

if($i < $total) {
$str .= $i.',';
}
else {
$str .= $i;
}
}
    

echo $str; //0,1,2,3


//2 - Using rtrim:


$source = array (1,2,3);
$total = count($source);


$str = null;


for($i=0; $i <= $total; $i++){
    

$str .= $i.',';
}


$str = substr($str,0,strlen($str)-1);
echo $str; //0,1,2,3