如何使用MySQL快速读取设置表?

时间:2018-04-05 06:07:20

标签: php mysql arrays

我得到了一个"设置"有4列的MySQL表:

ID|Variable|Value |Description
-------------------------------
1 |setting1|value1|Description1
2 |setting2|value2|Descritpion2
3 |setting3|value3|Description3
等等......

我需要提取每个设置并使用它,创建一个变量(使用相同的设置名称)为其分配相应的值。 例如

echo $setting1;

应该返回:value1

等等

这应该避免大量的查询,比如

SELECT * FROM setup WHERE Variable LIKE 'setting1'

我确实尝试过这样的事情:

$query = "SELECT * FROM setup";
$sth = $sql->prepare($query);
$sth->execute();

while($row = $sth->fetch(PDO::FETCH_ASSOC)){
    $$row[Variable] = $row[Value];
    echo $setting1;
}

但它什么都不返回

有没有办法得到它,拜托?

提前致谢

1 个答案:

答案 0 :(得分:0)

循环中出现语法错误。索引应该在引号中。尝试以下代码:

while($row = $sth->fetch(PDO::FETCH_ASSOC)){
    ${$row["Variable"]} = $row["Value"];
    echo $setting1;
}