我正在尝试从数据库中获取一些特定的键和值。我的数据库条目如下所示:
id | name | description | value
------------------------------------------
1 | lang | default language | en
2 | date | date format | YYYY-MM-DD
我只想回显我的name
和value
字段。我尝试过使用嵌套的 foreach 循环,如下所示:
foreach($details as $key => $value)
{
foreach($value as $index => $row)
{
echo $index . " / " . $row . "<br />";
}
echo "<br />";
}
但这只是回声:
id / 1
name / lang
description / default language
value / en
id / 2
name / date
description / date format
value / YYYY-MM-DD
但是,当我添加一个偏移量时,像这样:$index[1]
,我得到这个,a
而不是 name,或者e
而不是description
.
我以前使用 循环从while
循环中工作mysql_fetch_array
,但这会给我一个重复的元素(比如 a <tr>
),而我只需要提取字段的值,因为这将用于构建一个供用户管理的表单。
有人会对我做这种事情有什么建议或不同的方法吗?
编辑
查询来自一个类文件:
// extracted from my queries.class.php
public function my_prefs()
{
global $db;
$query = "SELECT * FROM preferences WHERE value!=NULL";
return $db->select($query);
}
// extracted from the source file
$module_details = $query->my_prefs();
编辑#2
也许这将帮助您了解我的需求:
foreach($module_details as $key => $value)
{
print_r($module_details);
}
返回:
Array
(
[0] => stdClass Object
(
[id] => 1
[name] => lang
[description] => default language
[value] => en
)
[1] => stdClass Object
(
[id] => 1
[name] => date
[description] => date format
[value] => YYYY-MM-DD
)
}
我只需要访问lang
/en
和date
/ YYYY-MM-DD
。