Sonsuz kategorilendirme için güzel bir fonksiyon:
function kategori($lev, $par, $arr)
{
foreach ($arr as $a)
{
if($a[2] == $par)
{
for($i = 0; $i < $lev; $i++)
echo " »";
echo $a[1]."
n";
kategori($lev + 1, $a[0], $arr);
}
}
}
$kategoriler = array(
array(1, 'Bilgisayar', 0),
array(2, 'Donanım', 1),
array(3, 'İşletim Sistemi', 1),
array(4, 'Ekran Kartı', 2),
array(5, 'Nvidia', 4),
array(6, 'ATI', 4),
array(7, 'İşlemci', 2),
array(8, 'Intel', 7),
array(9, 'AMD', 7),
array(10, 'Linux', 3),
array(11, 'Debian', 10),
array(12, 'Ubuntu', 10),
);
kategori(0, 0, $kategoriler);
#!/usr/bin/python
kategoriler = [
[1, 'bilgisayar', 0],
[2, 'donanim', 1],
[3, 'isletim sistemi', 1],
[4, 'ekran karti', 2],
[5, 'nvidia', 4],
]
def f(seviye, par, arr):
for a in arr:
if a[2] == par:
for i in range(seviye):
print '+',
print a[1]
f(seviye+1, a[0], arr)
f(0, 0, kategoriler)