基于值拆分数组

时间:2015-02-05 02:45:16

标签: php arrays multidimensional-array

我有这样的数组:

     array(4) {
  [0]=>
  array(2) {
    [0]=>
    string(2) "L2"
    [1]=>
    string(5) "Apple"
  }
  [1]=>
  array(2) {
    [0]=>
    string(2) "L3"
    [1]=>
    string(3) "Cat"
  }
  [2]=>
  array(2) {
    [0]=>
    string(2) "L2"
    [1]=>
    string(6) "Orange"
  }
  [3]=>
  array(2) {
    [0]=>
    string(2) "L3"
    [1]=>
    string(3) "Dog"
  }
}

我想得出一个结论:
a)L2的内容是什么? b)L3的内容是什么?

所以我制作了$ L2和$ L3阵列 但是,我不知道如何在一个数组中推送一些数组 我已经尝试过这个了:

for($j=0; $j<count($arrL); $j++){
    if($arrL[$j][0] == "L2"){
            $L2[] = $arrL[$j][1];
    }else if($arrL[$j][0] == "L3"){
            $L3[] = $arrL[$j][1];
    }
}

但结果是:

array(0) {
}  
你知道吗?

1 个答案:

答案 0 :(得分:1)

你的代码很好。如果我理解你想要什么,那么也许这可能会帮助你。这是我正在使用的代码:

$arrL = array(
        0 => array(
                    0 => "L2", 1 => "Apple"
                ),
        1 => array(
                    0 => "L3", 1 => "Cat"
                ),
        2 => array(
                    0 => "L2", 1 => "Orange"
                ),
        3 => array(
                    0 => "L3", 1 => "Dog"
                )
    );

for($j=0; $j<count($arrL); $j++){
    if($arrL[$j][0] == "L2"){
        $L2[] = $arrL[$j][1];
    }else if($arrL[$j][0] == "L3"){
        $L3[] = $arrL[$j][1];
    }
}

echo 'My L2 Array: ';
print_r($L2);

echo 'My L3 Array: ';
print_r($L3);

这是输出:

My L2 Array: Array ( [0] => Apple [1] => Orange ) My L3 Array: Array ( [0] => Cat [1] => Dog )