while($info5 = mysql_fetch_array($result)){
$namelist[] = $info5["name"];
$idlist[] = $info5["id"]
}
我想,其具有阵列IDLIST的条目,因为它的索引和阵列名称列表的条目,因为它是值的阵列的两个数组元素的数组索引和值。创建并从在while循环
有没有简短的方法来做到这一点?
while($info5 = mysql_fetch_array($result)){
$namelist[] = $info5["name"];
$idlist[] = $info5["id"]
}
我想,其具有阵列IDLIST的条目,因为它的索引和阵列名称列表的条目,因为它是值的阵列的两个数组元素的数组索引和值。创建并从在while循环
有没有简短的方法来做到这一点?
像这样,如果我了解您的请求。使用$info['id']
为阵列关键累积阵列$namelist
(或任何你决定将它命名)
while($info5 = mysql_fetch_array($result)){
$namelist[$info['id']] = $info5["name"];
}
$result = array();
while($info5 = mysql_fetch_array($result))
{
$id = $info5['id'];
$name = $info5['name'];
$result[$id] = $name;
}
这应该给输出数组$result
你想,如果我理解正确。
我不知道我理解你的问题,但可能是这样的事情应该没问题。
while($info5 = mysql_fetch_array($result)){
$values[$info5['id']] = $info5;
}
您可以使用array_combine
只要数组中有相同数量的值:
$result = false;
if (count($idlist) == count($namelist))
$result = array_combine($idlist, $namelist);
退房的文档:http://www.php.net/manual/en/function.array-combine.php
但是,我也想知道为什么你不只是做while循环:
$values = array();
$namelist = array();
$idlist = array();
while($info5 = mysql_fetch_array($result)){
$namelist[] = $info5["name"];
$idlist[] = $info5["id"]
// this is the combined array you want?
$values[$info5["id"]] = $info5["name"];
}