Невозможность присвоить значения массиву из цикла

У меня есть этот код:

function retrieve_answers($array = array(), $id = null) { include(root_path . '\config.php'); if($id == null) { $id = $this->question_id; } $query = mysqli_query($link, "SELECT * FROM `answers` WHERE `question_id`='$id'"); if(!mysqli_num_rows($query)) { throw new Exception('Question not found.'); } /* - Retrieves the answer rows - Loops through the array - Indexes the array and assigns the answerID to the index */ else { while($result = mysqli_fetch_array($query)) { for($i=0;$i<mysqli_num_rows($query);$i++) { $array[$i] = $result["id"]; } } } } 

Что входит в класс.

Что я пытаюсь сделать? Я пытаюсь принять массив как параметр и присваивать значения массиву, значения должны быть идентификаторами ответа, которые связаны с вопросом.

Файл test.php находится здесь:

 <?php define('root_path', realpath(dirname(__FILE__))); include(root_path . '\config.php'); require_once(root_path . '\includes\question.class.php'); $q = new Question(3); $array = array(); $q->retrieve_answers($array); var_dump($array); ?> 

Что происходит? Когда я пытаюсь отлаживать, выгружая массив, он показывает, что массив не содержит ничего:

array (0) {}

Я попытался выполнить результат MySQL через класс для отладки, и ему удалось получить идентификаторы ответов, поэтому я довольно уверен, что проблема в массиве.

Я был бы рад получить помощь, спасибо заранее.