mysql表中有一个变量$name
。此变量包含站点的名称。
我应该如何显示它以显示此变量的值?当我尝试输出时,变量显示为纯文本。
如果我尝试将它作为替代输出包含在大括号中,则会产生错误:
注意:未定义的变量。
这是我的代码:
$db=mysqli_connect('127.0.0.1', 'root', '', 'demo');
mysqli_query($db, "SET NAMES 'utf8'");
$tb_var=mysqli_query($db, "SELECT * FROM var");
$var=mysqli_fetch_assoc($tb_var);
echo ${$var['name']};
Mysql代码:
INSERT INTO `var` (`id`, `name`) VALUES (NULL, 'My site name $name');
答案 0 :(得分:0)
你没有变量。您有一些文本,您希望将其作为PHP双引号字符串文字进行处理,这足以将外部输入评估为需要担心的代码。
您可能希望切换到良好的旧...printf()格式代码:
INSERT INTO `var` (`id`, `name`) VALUES (NULL, 'My site name %s');
printf($var['name'], 'Acme Corporate Site');
并且,如果在HTML上下文中:
echo htmlspecialchars(sprintf($var['name'], 'Acme Corporate Site'));