php 如有必要,在每个单词后添加逗号

php add commas after each word if necessary

我只需要在每个类型后添加逗号:

例如:

if (a = 1) 显示 可口可乐

if (a = 1 and b = 1) 显示可口可乐、芬达

<?php 
echo 'Type:';
if ($a == 1) {echo 'Coca Cola';}
if ($b == 1) {echo 'Fanta';}  
if ($c == 1) {echo 'Sprite';} 
?> 

使用implode()

使用数组和 implode() 总是安全的,因为即使你没有任何

里面的元素,不会报错。

此外,在字符串中串联 , 最终要避免 , 和

的复杂性

复杂的逻辑,例如涉及设置计数器等。

implode() 给你美丽和简单。

<?php 
echo 'Type:';
$types = array();    
if ($a == 1) {$types[] = 'Coca Cola';}
if ($b == 1) {$types[] = 'Fanta / All types';}  
if ($c == 1) {$types[] = 'Sprite';} 
echo implode(', ', $types);
?>

这应该适合你:

<?php   

    echo 'Type: ';
    if ($a == 1) {echo 'Coca Cola';}
    if ($b == 1) {echo ($a == 1 ? ", ": "") . 'Fanta / All types';}  
    if ($c == 1) {echo ($b == 1 || $a == 1 ? ", ": "") . 'Sprite';} 

?>

假设您的意思是逗号,您应该将每个值添加到一个数组并在末尾打印它们,并在每个项目后附加一个逗号,修剪最后一个项目以从末尾删除逗号。

<?php
    $types = [];
    echo 'Type:';
    if ($a == 1) {$types[] = 'Coca Cola';}
    if ($b == 1) {$types[] = 'Fanta / All types';}  
    if ($c == 1) {$types[] = 'Sprite';} 

    echo rtrim(implode(', ', $types), ', ');
?>