一个菜单类满好用的
<?php
/*
使用方法如下:
$sm_1 = new submenu;
$sm_1->create("1");
$sm_1->add('','本类数据库');
$sm_1->add("./shk/","企位库");
$sm_1->add("./garden/","园区库","这里能查询园区数据");
$sm_1->add("./gr/","信息库");
$sm_2 = new submenu;
$sm_2->create("2");
$sm_2->add("","国类数据库");
$sm_2->add("./error.php?err=对不起!在开发中...","位库");
$sm_2->add("./error.php?err=对不起!在开发中...","区库");
$sm_2->add("./error.php?err=对不起!在开发中...","信息库");
...
...
$MainMenu = new menu;
$MainMenu->create();
$MainMenu->add($sm_1);
$MainMenu->add($sm_2);
$MainMenu->add($sm_3);
$MainMenu->add($sm_4);
<TABLE class="shadow" align="center" width="100%">
<TR>
<TD>
<?php
if (empty($_GET["action"]) && empty($_POST["action"])) {
$MainMenu->show();
}
if ($_POST["action"]=='open' || $_GET["action"]=='open') {
$MainMenu->id=(!$_GET["id"])?$_POST["id"]:$_GET["id"];
$MainMenu->show();
}
?>
</TD>
</TR>
</TABLE>
*/
class submenu { /* 子目录类 */
var $urls; /* 网址 */
var $desps; /* 名称 */
var $mytitle; /* 链接说明 */
var $cot; /* 序号 */
var $id; /* 执行id */
function create($id) { /*本身*/
$this->cot=0;
$this->id=$id;
}
function add($url, $desp, $stitle="") { /*方法_增加子目录内容*/
$this->urls[$this->cot]=$url;
$this->desps[$this->cot]=$desp;
$this->mytitle[$this->cot]=$stitle;
$this->cot++;
}
function open() { /*方法_打开子目录*/
$i=0;
echo '<table width="100%" border="0" align="center">';
while($i<=$this->cot) {
if ($i==0) { /*子目录本身*/
echo '<tr><td align="center" bgcolor="#000080"><font color="White">';
echo $this->desps[0];
echo '</font></td></tr>';
}
else {
echo '<tr><td align="center" ><font size="-1">';
echo '<a href="'.$this->urls[$i].'" title="'.$this->mytitle[$i].'">'.$this->desps[$i].'</a>';
echo '</font></td></tr>';
}
$i++;
}
echo '</table>';
}
function close() { /* 结束 */
echo '<table width="100%" border="0" align="center">';
echo '<tr><td align="center" bgcolor="#C0C0C0"><font color="White">';
echo '<a href="?action=open&id='.$this->id.'">'.$this->desps[0].'</a>';
echo '</font></td></tr>';
echo '</table>';
}
} //end class
class menu { /*主目录类*/
var $submenus; /*定义子目录阵列*/
var $cot; /*阵列内容序号*/
var $id; /*执行id*/
function create() { /*constructor*/
$this->cot=0;
$this->id=0;
}
function add($submenu) { /*方法_增加子目录*/
$this->submenus[$this->cot]=new submenu;
$this->submenus[$this->cot]=$submenu;
$this->cot++;
}
function show() { /*方法_显示目录*/
$i=0;
$tmp = new submenu;
while ($i<$this->cot) {
$tmp=$this->submenus[$i];
if ($tmp->id==(string)$this->id) {
$tmp->open();
}
else {
$tmp->close();
}
$i++;
}
}
} // end class
将 class submenu { /* 子目录类 */ 以上的代码另存为一个文件.执行就可以了