Мне нужно создать многомерный массив из данных таблицы базы данных в моем приложении CideIgniter.
База данных имеет 3 столбца: id, OfID и name. Столбец OfID содержит идентификатор родителя этого колледжа. Для колледжей, у которых нет родителя, OfID равен 0.
Массив должен содержать имя, ID и OfID колледжей, у которых OfID=0 в качестве элементов первого измерения. Для колледжей, у которых есть OfID!=0, следует указать массив второго измерения (и т. д.) для колледжа, идентификатор которого у них есть как OfID.
Я думал сделать это рекурсивно, но не могу закончить это. Я знаю, что здесь много ошибок, пожалуйста, помогите.
Следует класс модели: (контроллер вызывает функцию meth())
class Model extends CI_Model
{
var $return_this = array();
function meth()
{
$loop_id = 0;
getit($loop_id);
var_dump($return_this);
}
function getit($loop_id)
{
$index = 0;
$query = $this->db->query("select * from college where OfID=$loop_id ORDER BY `OfID` ASC;");
if ($query->num_rows() > 0) {
foreach ($query->result() as $row) {
$pass = $row->id;
$temp = getit($pass);
if ($temp == 0)
$return_this[$loop_id] = $query->result();
}
} else
return 0;
}
}
Подробнее здесь: https://stackoverflow.com/questions/112 ... r-query-re