我需要帮助为动态 mysqli 准备语句创建方法。下面的代码有错误。我知道我完全不喜欢 mysqli_stmt_bind_param 的设置方式,但我想不出解决方案。我的编码风格可能很奇怪,因为我使用的是 OO php,但程序是 mysqli。自从我阅读/观看的书籍和视频使用程序 mysqli 以来,我没有时间弄清楚 OO mysqli。我为这个问题看到的大多数解决方案都使用 OO mysqli。在我花了这么多时间学习 mysqli 之后,我宁愿为此获得一个短期解决方案,而不是不得不学习 PDO。
public function create($sql, $param_type, $param){
//param_type should be set as $param_type = "'ssss'" so that single quotes get passed into the variable
//param should be an array
//param array items should be escaped
$stmt = mysqli_prepare($this->dbc, $sql);
mysqli_stmt_bind_param($stmt, $param_type, join(array_values($param), ", "));
$result = mysqli_stmt_execute($stmt);
if($result){
return true;
} else{
return false;
}
mysqli_stmt_close($stmt);
}