Aslında kendi versiyonunu yazmak isteyen konum varsayarak (diğer cevaplar ettiler varolan kitaplıkları birini kullanarak karşı - ve bu çok iyi bir seçenek vardır) ...
Burada yararlı incelemek için bulabilirsiniz fonksiyonların bir çift vardır. İlk bir ilişkisel dizi için bir sorgunun sonuçlarını bağlamak sağlar ve ikinci iki diziler, tek tuşları sıralı bir dizi ve bu anahtarlar için veri diğer bir ilişkisel dizi geçmek ve sahip olmanızı sağlar içine veri bağlı Bir hazır deyim:
function stmt_bind_assoc (&$stmt, &$out) {
$data = mysqli_stmt_result_metadata($stmt);
$fields = array();
$out = array();
$fields[0] = $stmt;
$count = 1;
while($field = mysqli_fetch_field($data)) {
$fields[$count] = &$out[$field->name];
$count++;
}
call_user_func_array(mysqli_stmt_bind_result, $fields);
}
function stmt_bind_params($stmt, $fields, $data) {
// Dynamically build up the arguments for bind_param
$paramstr = '';
$params = array();
foreach($fields as $key)
{
if(is_float($data[$key]))
$paramstr .= 'd';
elseif(is_int($data[$key]))
$paramstr .= 'i';
else
$paramstr .= 's';
$params[] = $data[$key];
}
array_unshift($params, $stmt, $paramstr);
// and then call bind_param with the proper arguments
call_user_func_array('mysqli_stmt_bind_param', $params);
}