Verwendung des IN-Operators mit MySQLi-vorbereiteten Anweisungen
Bei der Verwendung des IN-Operators mit IN-Operator in MySQLi-vorbereiteten Anweisungen ist die richtige Formatierung von entscheidender Bedeutung die Parameter. Der ursprünglich bereitgestellte Code:
$data_res = $_DB->prepare('SELECT `id`, `name`, `age` FROM `users` WHERE `lastname` IN (?)'); $data_res->bind_param('s', $in_statement);
enthält einen Fehler, da $in_statement eine Zeichenfolge und kein Array von Werten ist. Um dieses Problem zu beheben, wird ein alternativer Ansatz mit der Funktion call_user_func_array vorgestellt:
$int = str_repeat('i', $count_params); array_unshift($arParams, $int); $q = array_fill(0, $count_params, '?'); $params = implode(',', $q); $data_res = $_DB->prepare('SELECT `id`, `name`, `age` FROM `users` WHERE `lastname` IN ('.$params.')'); call_user_func_array(array($data_res, 'bind_param'), $arParams);
In diesem modifizierten Code:
Das obige ist der detaillierte Inhalt vonWie verwende ich den IN-Operator korrekt mit von MySQLi vorbereiteten Anweisungen und mehreren Parametern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!