我有以下代码使用预处理语句执行MySQL查询:提取处理mysqli预处理语句时的替代方法?
$selectStatement = "SELECT " . implode(", ", $allFields); // cat select w/ allFields
$stmnt = $mysqli->prepare($selectStatement .
"FROM Musicians WHERE name = ?");
$stmnt->bind_param('s', $name);
$stmnt.execute();
在这一点上,大多数我读过告诉我,我应该在$ stmnt使用bind_result()
然后fetch()
。但是,我宁愿让数组填充值而不是迭代一堆转储变量,如fetch()
所做的那样。有没有办法获得类似fetch_assoc()
在使用准备好的语句和结果时会给我的东西?
为什么你没有在执行方法中设置数组? – Sam 2013-03-03 21:48:41
因为它返回一个布尔值并且不接受任何参数? – user1427661 2013-03-03 21:50:43
看一看:http://www.php.net/manual/en/mysqli-result.fetch-all.php – michi 2013-03-03 22:08:36