note 106418 deleted from mysqli-stmt.bind-param by danbrown

From: Date: Tue, 15 Nov 2011 16:47:55 +0000
Subject: note 106418 deleted from mysqli-stmt.bind-param by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-184500@lists.php.net to get a copy of this message
Note Submitter: Ole Clausen ---- Due to changes in PHP 5.3 I encountered a problem with 'bind_param' in my iQuery function below. The values in the passed array *must* be references. The soloution is this function: function getRefArray($a) { if (strnatcmp(phpversion(),'5.3')>=0) { $ret = array(); foreach($a as $key => $val) { $ret[$key] = &$a[$key]; } return $ret; } return $a; } - and this change in iQuery: if ($stmt = $mysqli->prepare($sql)) { $arrParams = getRefArray($arrParams); // <-- Added due to changes since PHP 5.3 $method = new ReflectionMethod('mysqli_stmt', 'bind_param'); $method->invokeArgs($stmt, $arrParams); $stmt->execute(); $meta = $stmt->result_metadata();

« previous php.notes (#184500) next »