この有用な回答に従って、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を学んでいます:)