【发布时间】:2018-03-28 16:39:40
【问题描述】:
我正在寻找配置/详细信息文件的解决方案。我发现this 解决方案很有趣,但我不想硬编码这些值,而是想从数据库中检索它们。
我也是 PDO 的新手,但目前我的解决方案如下(config.php):
try {
$db = new PDO('mysql:host=localhost;dbname=dbname;charset=utf8', 'user', 'pwd');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $db->query("SELECT name, value FROM config");
$configs = $stmt->fetchAll();
return [
array_column($configs, 'value', 'name')
];
} catch(PDOException $e) {
echo "Error: ".$e->getMessage();
}
然后我得到这样的回应:
Array ( [0] => Array ( [SITENAME] => Pionérhytta [MAXGUESTS] => 5 ) )
我需要这样写才能获得价值(index.php):
<?php $config = include('../config/config.php'); ?>
...
<?=$config[0]['SITENAME']?>
这可行,但我想删除 [0] 并编写 $config['SITENAME'] 来获取值。
有什么解决办法吗?
提前感谢您的帮助
【问题讨论】:
-
return array_column($configs, 'value', 'name');就够了吗?
标签: php arrays return-value