有没有办法让这种情况发生?我的意思是阶段==变量?
$var1 = "1";
$var2 = "2";
$where = $db->query('SELECT * FROM stages WHERE stage = $var1');
$chapter = $where[0]["$var1"];
编辑:得到了更多信息。 当我尝试运行这个时,我得到一个phpProvider的php错误,没有任何反应。如果我写
$where = $db->query('SELECT * FROM stages WHERE stage = 1');
$chapter = $where[0]["1"];
一切正常。我只是希望能够自动化这两个:)
答案 0 :(得分:1)
如果您使用双引号而不是单引号,那么PHP会为您插入变量:
$var1 = "1";
$var2 = "2";
$where = $db->query("SELECT * FROM stages WHERE stage = $var1");
但是如果$ var1是来自用户的东西,那么你不应该这样做以避免SQL注入。
我不清楚你的$where[0]["$var1"]
去了哪里......你的意思是使用另一个变量吗?如果是这样,您正在使用PDO中的:var
或mysqli中的?
查找准备好的语句。