Remove the last Comma from a string (PHP / Wordpre

2019-03-06 14:36发布

问题:

I am generating a list of the terms on a custom post type in Wordpress, in this code i add a comma to the end of each item to separate it in a list format, how would i either eliminate the last the comma from propagating on addition or remove the last comma on the list.

$terms = get_the_terms( $post->ID, 'clients' );
if ( $terms && ! is_wp_error( $terms ) ) :
$clients_list = array();
foreach ( $terms as $term ) {
    $clients_list[] = $term->name;
}
$clients = join( ", ", $clients_list );
$catTags .= "$clients, ";
endif;

I have tried the following to no success;

<em><?php $string = $catTags;
    echo preg_replace("/\,$/","",$catTags); ?></em>

回答1:

You can do simply:

rtrim($catTags, ', ');


回答2:

What I usually do, is to add a comma at the begin of a loop, by checking if there is already data in the variable.

So in this case something like this:

if (strlen($catTags) > 0)
    $catTags .= ',';


回答3:

This should work:

return substr($string, 0, -strlen(','));

will remove the last comma at the end of the string.



标签: php wordpress