我有一个名为“设置”的数据库表,在该表中我有2列。示例图片:从单元格获取数据
正如你可以看到,第一列被称为 “SETTING_NAME”,第二个被称为 “setting_value”。
我该怎么办,所以每当我写的例子:
echo $setting['ad_cost_micro'];
它会打印出:
0.00200
顺便说一句。有没有可能做而声明?
我有一个名为“设置”的数据库表,在该表中我有2列。示例图片:从单元格获取数据
正如你可以看到,第一列被称为 “SETTING_NAME”,第二个被称为 “setting_value”。
我该怎么办,所以每当我写的例子:
echo $setting['ad_cost_micro'];
它会打印出:
0.00200
顺便说一句。有没有可能做而声明?
我倾向于使用PDO和fetchAll()
。
$stmt = $db->prepare('SELECT `setting_name`, `setting_value` FROM `settings`');
$stmt->execute();
$setting = $stmt->fetchAll();
echo $settings['ad_cost_micro']; //Should output 0.00200.
注:不管你用什么,while循环是不可避免的因为你必须在结果集(fetchAll()
)循环确实太,也知道每一个循环是一个while循环(甚至for循环!)。
感谢那些信息,我没有意识到这一点! 如何使用上面的代码snippit,这样$设置变量可以在我的所有页面上访问? –
你可以将它存储在一个会话中,或者包含这段代码(在每一页上都使用'include_once()'或'require_once()' –
但是,$ db变量怎么样?我们不能离开它,因为它给了我一个错误 –
无法看到的截图,但也许......
$query = mysql_query("SELECT * FROM settings");
while ($row = mysql_fetch_array($query, MYSQL_ASSOC)) {
$setting[$row['setting_name']] = $row['setting_value'];
}
是更新微小的PIC –
-1。 –
@Rududo这有什么问题吗?我们对OP的安装一无所知,因此您不知道其他功能(例如:mysqli,PDO)是否可用。 – NullUserException
如果mysqli的可...
$mysqli = new mysqli(hostname, username, password, database);
$result = $mysqli->query('SELECT setting_name,setting_value FROM settings');
if ($result->num_rows > 0)
{
$rows = $result->fetch_array();
$setting = array();
for($i = 0; $i <= $result->num_rows(); $i++)
{
$setting[$rows[$i]['setting_name']] = $row[$i]['setting_value'];
}
unset($rows);
$result->free();
}
else
{
// error handling
}
$mysqli->close();
编辑:删除,而取而代之是
这个点有点不用while循环;) –
是更好的? ;) – sammoore
截图不起作用,尝试上传到我都截图 – fire
,但这是在一个while循环中完成。这不能避免吗?用于'mysql_ *'函数的 –