检索PHP Prepared Statement字段数据

时间:2011-09-10 17:35:11

标签: php mysqli

我正在使用Mysqli扩展和PHP准备语句SELECT;我不知道我在SELECT中有多少字段,直到我做完

之后
$stmt->execute();
$fieldcnt = $stmt->field_count;

因为这个,我在做一个

时遇到了问题
$stmt->bind_result(list of parms);

即,由于我不知道返回了多少字段,我不知道如何构建“parms列表”。

所以,我需要一些关于如何访问返回字段的建议;

2 个答案:

答案 0 :(得分:1)

请勿使用bind_result,并使用fetch_assoc()

这将返回每行的关联数组:

while ($row = $stmt->fech_assoc()) {
    print_r($row);
}

答案 1 :(得分:0)

如果绝对必须使用call_user_func_array(),您可以利用bind_result()来完成此任务。

// create an array the size of the number of parameters
$params = array_fill(0, $fieldcnt, null);

// call bind_result, resulting in every column of the result to be
// bound to a value in $params
call_user_func_array(array($stmt, 'bind_result'), $params);

// take a look at all the params
print_r($params);