修复“致命错误:调用未定义的方法 mysqli_stmt::fetch_array() [重复]”
在您的代码中,您是使用准备好的语句时尝试使用 mysqli_stmt::fetch_array() 。此函数不适用于准备好的语句。
解决方案:
相反,您应该使用 mysqli_stmt::fetch() 来检索单行数据,或 mysqli_result ::fetch_all() 检索多行。
修改后的代码:
<code class="php">$search = "player"; $sql = $db->prepare('select job from jobs where job like ?'); $sql->bind_param('s', $search); $sql->execute(); $result = $sql->get_result(); // Get the result object $data = array(); while ($row = $result->fetch_assoc()) { $data[] = array( 'label' => $row['job'] ); echo json_encode($data); } $sql->close(); $db->close();</code>
通过使用 mysqli_stmt::fetch_array() 或 mysqli_result::fetch_assoc(),您可以成功从数据库中检索数据而不会遇到错误。
以上是为什么使用准备语句时会出现“致命错误:调用未定义的方法 mysqli_stmt::fetch_array()”?的详细内容。更多信息请关注PHP中文网其他相关文章!