Double Array,逗号分隔不被接受

时间:2014-10-25 17:08:18

标签: php arrays regex

我想在一个MainArray中创建三个数组。

三个数组的最后两个数组属于一个变量。

如何使用逗号分隔两个数组?

一个简单的","不被接受,因为MainArray不接受它。

我使用了explode,implode,join,但没有任何效果,系统会输出逗号 但是这个逗号不被识别为执行两个数组分离的编码逗号。

$array0 = array("carparts"=>$carparts, "info"=>$info);


$i = 0;
while($i <= 1) {
    $i++;
    $array_season[$i] = array(
        "carpartsseason" => $carpartsseason[$i],
        "additional_s" => $info_s);
}

$MainArray = array(
    $array0, 
    $array_season
);

如您所见,上一个$array0背后的逗号适用于$MainArray。 但是如何在array_season的每个数组后面加一个逗号?

例如我在之后添加:

$display = '';
foreach($array_season as $new_output){
    $display .= $new_output . ',';
}

识别$new_output. ',')后面的逗号。 然后更改了$MainArray

$MainArray= array(
    $array0, 
    $display
);

但没有成功。与加入和内爆相同。

(我工作了两天,但没有结果)

3 个答案:

答案 0 :(得分:2)

我认为这里有一些关于数组表示,逗号角色以及如何从数组中添加和删除项目的混淆。

在声明数组时,逗号用于分隔不同的元素,例如:

$fruits = array( 'apple', 'banana', 'carrot' );

该数组的每个元素都是一个字符串。

您还可以将包含逗号的字符串添加到数组中:

$stuff = array( 'snow, falling', 'rain, pouring', 'sun, shining' );

逗号位于数组的元素内;他们对阵列的结构没有特殊的权力。

执行此操作时:

$display .= $new_output . ',';

您在$new_output的末尾添加逗号,并且您将整个字符串添加到现有字符串$display。这不会形成阵列;当您稍后将$display添加到现有数组时,$display仍然只是一个包含逗号的长字符串,有点像上面$stuff中的字符串。

如果要向数组添加项目,可以使用array_push或更常用的简写表示法:

# declare $display as an array
$display = array();
foreach($array_season as $new_output){
    # add $new_output to the $display array
    $display[] = $new_output;
}

我不清楚您正在寻找什么样的结构,但如果您想将$ array_season添加到现有的$MainArray,您可以按以下方式执行此操作:

# no need to create $array0 unless you need it elsewhere
$MainArray = array("carparts" => $carparts, "info" => $info);

$i = 0;
while($i <= 1) {
    $i++;
    $MainArray[] = array(
        "carpartsseason" => $carpartsseason[$i],
        "additional_s" => $info_s);
}

这会将包含('carpartsseason' => $carpartsseason[$i], 'additional_s' => $info_s)的数组直接推送到$MainArray

答案 1 :(得分:0)

创建'MainArray':

$MainArray = array($array0);

然后在while循环中,使用$MainArray[] =将每个季节数组附加到其末尾:

$i = 0;
while($i <= 1) {
    $i++;
    $MainArray[] = array(
        "carpartsseason" => $carpartsseason[$i],
        "additional_s" => $info_s);
}

答案 2 :(得分:0)

使用array_merge

$MainArray = array_merge($array0, $array_season);