Code: Select all
function get_data($query, $inputParams, &...$vars) {
global $conn;
$stmt = $conn->prepare($query);
if(!$stmt) {
die("prep of query '" . $query . "' failed");
}
$stmt->bind_param($inputParams, ...$vars[0-strlen($inputParams)]);
$stmt->execute();
$stmt->bind_result(...$vars[strlen($inputParams)+1]);
$stmt->fetch();
$stmt->close();
}
Code: Select all
get_data("SELECT x FROM table WHERE id=? AND y=?", "is", 839, $stringVariable, $outputVariable);
the ...$vars[0-strlen($inputParams)] ist der Bereich der variablen Anzahl von Parametern von Null bis zur Anzahl der Variablen aus dem $inputParams Länge, und ebenso mit dem ...$vars[strlen($inputParams)+1], der ab dieser Position versucht, alles zu sein.