我有一个结构生成的数组:
$groups = array();
while ($group = mysql_fetch_array($groups_result)) {
$groups[] = array( 'id' => $group['id'], 'name' => $group['name']);
}
我怎样才能在代码中稍后通过其ID获取组的名称?例如,我想要一个像:
这样的函数function get_name_by_id($id, $array);
但我正在寻找已经在PHP中实现的解决方案。我知道使用array [5] = array('name'=>“foo”)等制作数组会更容易,其中5在这种情况下是id,但在我的代码中有很多数组已经像我一样创建如上所述,我无法轻易切换它。
答案 0 :(得分:1)
$groups = array();
while ($group = mysql_fetch_assoc($groups_result)) {
$groups[$group['id']] = array( 'name' => $group['name']);
}
$name = $groups['beer']['name'];
也请不要使用fetch_assoc比获取数组
更有效答案 1 :(得分:0)
function get_name_by_id($id, $data) {
foreach($data as $d) {
if ($d['id'] == $id) {
return $d['name'];
}
}
// return something else, id was not found
}