PHP无限极分类之数组

<?php
$data = array( 1 => array('id' => 1,'name' => 'name1','pid' => 0),
			2 => array('id' => 2,'name' => 'name2','pid' => 0),
			3 => array('id' => 3,'name' => 'name3','pid' => 1),
			4 => array('id' => 4,'name' => 'name4','pid' => 0),
			5 => array('id' => 5,'name' => 'name5','pid' => 3),
			6 => array('id' => 6,'name' => 'name6','pid' => 3),
	);
 $str = getTree(0);
$str = "<select name='term'>" . $str . "</select>";
echo $str;
function getTree($id,$spac=0)
{
	$data = array( 1 => array('id' => 1,'name' => 'name1','pid' => 0),
			2 => array('id' => 2,'name' => 'name2','pid' => 0),
			3 => array('id' => 3,'name' => 'name3','pid' => 1),
			4 => array('id' => 4,'name' => 'name4','pid' => 0),
			5 => array('id' => 5,'name' => 'name5','pid' => 3),
			6 => array('id' => 6,'name' => 'name6','pid' => 3),
	);
	$spac = $spac + 2;
	static $str;
	
	foreach ($data as $k => $v) {
		if ($v['pid'] == $id) {
			$arr[] = $v;
			$str .= "<option value='" . $v['id'] . "'>" . str_repeat("&nbsp;",$spac) . "|--" . $v['name'] . "</option>";
			getTree($v['id'],$spac);

		}

	}
	
	return $str;
}



?>

效果如图


wKioL1ZnkyywYIcCAAAc5ZmWr-A733.png

你可能感兴趣的:(php无限极分类)