如何在SQL表中存储对变量的引用?我有这段代码:
$id = 10;
$variable_value = 'real value';
$connect_db=mysqli_connect('localhost', 'this', 'that', 'a_table');
$result = $connect_db->query("SELECT * FROM the_table where id = '$id'");
$row = $result->fetch_assoc();
$the_function = $row['trigger']; // this row has a value '$variable_value' (w.o quotes)
echo '$the_function:'.$the_function.'<br>'; // echoes '$variable_value'
有可能让它回应“真正的价值”吗?
答案 0 :(得分:1)
您可以使用变量来双重评估数据库值中的内容:
$the_function = "variable_value";
echo $$the_function;
输出
real value
请注意,您不需要使用$
添加数据库值,只会使问题复杂化。
另外你称之为“the_function”的事实让我觉得你想用它来调用一个名字就是变量的函数......你也可以这样做!
function variable_value() {
echo "real value";
}
$the_function();
以下是两种方法:
答案 1 :(得分:0)
尝试:
$the_function = $row['trigger']; // this row has a value '$variable_value' (w.o quotes)
$the_function = ltrim($the_function,'$');
echo '$the_function:'.${$the_function}.'<br>';
它被称为变量变量名。 Reference
为此,必须删除$
。所以我从你的$the_function
中删除它并使用${$<variable_name>}
将其作为其值的变量引用。