Я получил таблицу "setup" в MySQL с 4 столбцами:
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;
}
но ничего не возвращает
Есть ли способ получить его, пожалуйста?
заранее спасибо
У вас есть синтаксическая ошибка в вашем цикле. Индекс должен быть в кавычках. попробуйте следующий код:
while($row = $sth->fetch(PDO::FETCH_ASSOC)){
${$row["Variable"]} = $row["Value"];
echo $setting1;
}
var_dump($row)
внутри while?