我想使用数组中的参数在PHP中准备SQL查询。它应该是准备好的声明。假设这是我的带有参数的数组$params = array("arg1" => 1, "arg2" => 0, "arg3" => 1)我希望我的查询看起来像SELECT * FROM table WHERE arg1 = 1 AND arg2 = 0 AND arg3 = 1
2 回答
![?](http://img1.sycdn.imooc.com/54584eff000195a302200220-100-100.jpg)
慕虎7371278
TA贡献1802条经验 获得超4个赞
$qry= 'SELECT * FROM table WHERE ';
foreach($params as $key => $value)
{
$qry .= $key . '=' . $value . ' AND ';
}
$qry = substr($qry, 0, -5); // remove last ' AND '
这应该足以让您入门。根据您正在运行的MySQL / SQL / PHP版本,可能需要在变量周围加上引号。此解决方案不解决SQL注入或准备好的语句。您可以添加?或,:variable具体取决于您构造预准备语句的方式。
其他选项...您可以将数组内插为'AND'分隔的字符串。请参阅堆栈溢出问题如何在php / mysql中的MySQL查询中使用数组变量
- 2 回答
- 0 关注
- 141 浏览
添加回答
举报
0/150
提交
取消