if($result instanceof mysqli_stmt) { $result->store_result(); $variables = array(); $data = array(); $meta = $result->result_metadata(); // 從這裡開始就迷糊 while($field = $meta->fetch_field()) $variables[] = &$data[$field->name]; // pass by reference call_user_func_array(array($result, 'bind_result'), $variables); $i=0; while($result->fetch()) { $array[$i] = array(); foreach($data as $k=>$v) $array[$i][$k] = $v; $i++; } }
上面的代碼中$variables是一個索引為數位空數組啊,怎麼綁定上的。。最好解釋一下為什麼這麼寫?感激不盡。
回複內容:
if($result instanceof mysqli_stmt) { $result->store_result(); $variables = array(); $data = array(); $meta = $result->result_metadata(); // 從這裡開始就迷糊 while($field = $meta->fetch_field()) $variables[] = &$data[$field->name]; // pass by reference call_user_func_array(array($result, 'bind_result'), $variables); $i=0; while($result->fetch()) { $array[$i] = array(); foreach($data as $k=>$v) $array[$i][$k] = $v; $i++; } }
上面的代碼中$variables是一個索引為數位空數組啊,怎麼綁定上的。。最好解釋一下為什麼這麼寫?感激不盡。