Posts Tagged ‘kategori’

Sonsuz kategorilendirme

Sunday, December 14th, 2008

Sonsuz kategorilendirme için güzel bir fonksiyon:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function kategori($lev, $par, $arr)
{
	foreach ($arr as $a)
	{
		if($a[2] == $par)
		{
			for($i = 0; $i < $lev; $i++)
				echo " »";
			echo $a[1]."<br />\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);
?View Code PYTHON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/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)