Php 连接由逗号分隔的字符串,但如果字符串为空,则逗号不应位于开头

Php 连接由逗号分隔的字符串,但如果字符串为空,则逗号不应位于开头,php,Php,我有3个字符串: $string1=1,2,3,4,5,6 $string2=7,8,9 $string3=11,12 我想连接上面用逗号分隔的字符串 期望输出: $string=1,2,3,4,5,6,7,8,9,11,12 由于以上都是字符串,我不能使用内爆() $string = $string1 . "," . $string2 . "," . $string3; 感谢大家,我得到了解决方案,但是上面的任何字符串也可以为空。这意味着如果$string 1为空,那么我将拥有 $str

我有3个字符串:

$string1=1,2,3,4,5,6
$string2=7,8,9
$string3=11,12
我想连接上面用逗号分隔的字符串

期望输出:

$string=1,2,3,4,5,6,7,8,9,11,12
由于以上都是字符串,我不能使用
内爆()

$string = $string1 . "," . $string2 . "," . $string3;
感谢大家,我得到了解决方案,但是上面的任何字符串也可以为空。这意味着如果$string 1为空,那么我将拥有

$string =,7,8,9,11,12
但无论如何,我开头不能用逗号

而不是输出应该是

$string =7,8,9,11,12

如何实现所需的输出?

简单的接触应该很好:

$string = $string1 . "," . $string2 . "," . $string3;
或更紧凑:

$string = "{$string1},{$string2},{$string3}";
您可以使用
内爆()
,但首先需要
分解(“,”,$string1)。不过,根据您的描述,简单的连接已经足够了

编辑

一开始连一个逗号都买不起

然后将其移除:

if( $string[0] === ',' ) {
   $string = substr($string,1);
}

虽然已经给出了答案,但我认为这个答案也非常符合您的所有要求。
如果在开始、结束或中间有逗号,它将起作用。我希望如此:)


所有这些变量都是字符串,而不是数组?试试这个:echo内爆(“,”,array_filter(array($string1,$string2,$string3));有时候事情可能很简单,我想到了所有复杂的方法,但我没有想到这一个。:)谢谢+1会接受的,不用担心。每个人都会不时遇到:)这真的是问题的级别吗,应该由一个拥有18k声誉的用户来回答。你难道没有任何自豪感吗?@tereško我认为你在3年内拥有大约2700个声誉,也就是说每年拥有9000个声誉,我的在不到2个月的时间里大约是2k,所以你可以计算3年。我们都从某个地方开始,从错误中学习,我们都会犯愚蠢的错误。知识应该来自礼貌。我认为如果有像3,4,5这样的字符串,这可能会产生问题。为什么不使用array_unique?因为字符串可能有重复的值,例如3,3,4,5,6
$string=$string1.",".$string2.",".$string3;
$del = ',';
$res = array_merge(explode ( $del , $string1 ),explode ( $del , $string2 ),explode ( $del , $string3 )); 
var_dump(implode($del,$res));
public function verywell()
{
    $string1='1,2,3,4,5,6,,,,,,,';
    $string2=',,,,,,,,7,,9';
    $string3='10,11,,,,,,,,12';
    $arr1=  explode(',', $string1);
    $arr2=  explode(',', $string2);
    $arr3=  explode(',', $string3);
    $val=  array_merge($arr1,$arr2,$arr3);
    foreach($val as $key=>$value)
    {
        if($value=='')
        {
            unset($val[$key]);

        }
    }
       echo implode(',',$val);
}