在数组中添加键值

时间:2011-07-12 18:49:15

标签: php

我有

$test = array();

if(isset($ln[8])){
    $test[] .= $id[0].'=>'.$ln[14];
}    

但它会像这样放置数组

array (
           [0]=> 6525 => 120
           [1]=> 6521 => 1243
           [2]=> 5214 => 1674
           [3]=> 6528 => 155
)

而我希望它能做到这一点

array (
           6525 => 120
           6521 => 1243
           5214 => 1674
           6528 => 155
)

我该怎么做。

3 个答案:

答案 0 :(得分:5)

您正在做的是将一个字符串添加到数组中的每个元素,例如“6525 => 120”。你真正想要做的是将$ lan [14]的值(例如,整数值120)添加到位置$ id [0](例如,6525)。这是使用常规数组语法的方法:

$test[$id[0]] = $ln[14];

请注意我如何将$id[0]视为$test数组的关键字。它可以是整数6265,一个值为"hello"的字符串,一个名为$key的变量,一个函数调用,或者在这种情况下是另一个数组中的元素。

答案 1 :(得分:2)

您希望将$id[0]设为索引,而目前您将字符串连接在一起作为值。

尝试以下方法:

$test[$id[0]] = $ln[14];

我也鼓励你看看CakePHP's Set Class

答案 2 :(得分:1)

试试这个

$test[$id[0]] = $ln[14];

您的错误是您尝试将字符串附加到数组中,您必须使用id作为键,并使用ln作为值。