根据这个有用的答案mysqli bind_param() 应该是一个参考,给定的值我可以创建动态查询。
现在,我正在学习 OOP,但我无法理解移动该功能、渲染保护和从其他方法访问的正确模式。
功能是:
function refValues($arr){
if (strnatcmp(phpversion(),'5.3') >= 0) //Reference is required for PHP 5.3+
{
$refs = array();
foreach($arr as $key => $value)
$refs[$key] = &$arr[$key];
return $refs;
}
return $arr;
}
现在我在一个类中调用它:
class MyBaseCrud {
// other stuff
$rc = call_user_func_array(array($stmt, 'bind_param'), refValues($params));
// other stuff
}
我将了解更多关于 OOP 的信息,因此我将采用以下方法进行转换:
protected function refValues($array) {
// body method
}
并在正确调用后
$rc = call_user_func_array(array($stmt, 'bind_param'), refValues($params));
当然,我确实尝试在 body 类中移动该功能
protected function refValues($arr){
if (strnatcmp(phpversion(),'5.3') >= 0) //Reference is required for PHP 5.3+
{
$refs = array();
foreach($arr as $key => $value)
$refs[$key] = &$arr[$key];
return $refs;
}
return $arr;
}
保持原样
$rc = call_user_func_array(array($stmt, 'bind_param'), refValues($params));
没有成功。
拜托,温柔点...现在就学习 OOP :)