Hi allen,
Ik heb een database met een soort van boomstructuur:
id (INT)
boundTo (INT)
title (VARCHAR)
Het idee is dat de kolom 'id' uniek is (gewoon de primaire sleutel) en dat 'boundTo' verwijst naar 'id' (zo kun je dus vertakkingen krijgen).
id, boundTo, title
1, 0, hoofd
2, 1, oog
3, 1, neus
4, 2, iris
5, 2, pupil
Zo heb je het effect dat aan het hoofd de oog en de neus zitten, en aan het oog de iris en de pupil.
Nu wil ik dit model omzetten naar een soort Tree:
<?php
class TreeElement {
private $elements = array();
public function add(TreeElement $element) {
$this->elements[] = $element;
}
}
?>
Hoe kan ik het model die de database gebruikt, het beste omzetten naar een tree-model als hierboven?
Neem aan dat de data uit de database al in dit format staat:
<?php
$dataUitDatabase = array(
array(
"id" => 1,
"boundTo" => 0,
"title", => "hoofd",
),
array(
"id" => 2,
"boundTo" => 1,
"title" => "oog",
),
);
?>
enz.
Ik ben ervan overtuigd dat er meerdere wegen naar Rome zijn, maar welke is de beste? Moet ik in PHP een entity-object maken die de databasetabel representeert? En wat is het voordeel van die methode?
Greetz,
Maurits
2.551 views