我正在构建一个我想从db中检索键/值对的函数,它就像$result=array($key=>$value);
,当我使用这个$result
时,在一个需要在其参数中使用数组的对象中< / p>
function Foo($result) { array ('superkey'=>$result); }
这认为$ result包含多个这样的数组:
Array
(
[key1] => value1
)
Array
(
[key3] => value2
)
Array
(
[key3] => value3
)
Array
(
[key4] => value4
)
但是我希望它将它视为一个数组:
Array
(
[key1] => value1
[key3] => value2
[key3] => value3
[key4] => value4
)
任何人都可以帮助我吗?
答案 0 :(得分:0)
如何使用array_merge
:
array_merge($array1, $array2, $array3, ...);
答案 1 :(得分:0)
从数据库中检索值时,它通常会发送一个多维数组,如:
array(3) {
[0]=> array(1) { ["samekey"]=> value1 }
[1]=> array(1) { ["samekey"]=> value2 }
[2]=> array(1) { ["samekey"]=> value3 }
}
这些数组的键始终相同,因为它们代表数据库中的列名。听起来像你正在寻找一种方法将所有这些值编译成一个数组。要做到这一点,你需要忘记密钥,并使用一些东西:
foreach($result as $entry) $fixedresult[] = $entry['samekey'];
答案 2 :(得分:0)
好吧,如果你想在许多阵列上使用array_merge
,但你还不知道它有多少,你可以做到以下几点:
call_user_func_array('array_merge', $result);
虽然$result
中包含的数组具有相同的密钥,但一旦其他人指出,这将会中断。