PHP,2d数组中的值始终为1

时间:2012-12-20 14:16:54

标签: php arrays firebug multidimensional-array

  

可能重复:
  PHP - Why is a concatenated print_r printed out of order?

以下是一段代码,其中包含S:2:0;M:7:9;L:4:9;XL:6:0;XXL:6:9格式的$ input,这些代码被解析并存储到2d数组中..通过以下代码

    $stock_data = explode(';', $input);
    foreach($stock_data as $value) {
        $value = explode(':', $value);

        if (!empty($value[0])) {

            $temp_size = $value[0];
            $stock[$value[0]] = array('winkel' => $value[1], 'distributeur' => $value[2]);

            fb('afetr array val = '.$temp_size.' = its val -|'. print_r($stock[$temp_size]['distributeur']).'|',FirePHP::INFO);
        }
    }

    return $stock;

print_r($stock[$temp_size]['distributeur']print_r($stock[$temp_size]['winkel']中的值始终为1,即使稍后我尝试print_r整个数组$stock,它所获得的只是1。

我试图让print_r()显示数组应该是什么,这里出了什么问题。

1 个答案:

答案 0 :(得分:3)

那是因为that's what print_r returns。如果您希望它返回字符串,请添加第二个参数:

print_r($stock[$temp_size]['distributeur'], true)