C/S を使用したことがある人にとっては、メニューから関数を選択するのが最も基本的な操作ですが、PHP では次のような方法でメニュー関数を実装することも簡単です。
//
// 著者: christine
// email: greenchn@163.net //
var $name;
var $closed; ;
関数メニュー($name,$open = (-),$closed = (+),$indent = )
{
$this->items = array();
$this->name = $name;
$this->open = $open;
$this->indent = $indent
}
function add($name, $href="" , $target = " ")
{
$n = count($this->items);
if (is_object($name))
{
$this->items[$n] = $name;
}
else
{
$this->items[$n][name] = $name;
$this->items[$n][href] = $href;
$this->items[$n][target] = $target;
}
}
関数 show($nest = 0)
{
$urlname = strtr($this->name, , _);
global $$urlname;
global $QUERY_STRING;
if ($nest)
{
$indent = str_repeat($this->indent, $nest)}
if (isset($urlname)) | {
printf(%s %s
,
$indent . $this->open,
$PHP_SELF,
ereg_replace("{$urlname}=&",, $QUERY_STRING),
echo); "n";
while (list(,$item) = each($this->items))
{
if (is_object($item))
{
$item->show($nest + 1);
}
else
{
printf(%s%s
,
$indent . $this->indent,
$item[href],
(!empty($item[target]) ? target=".$item [ターゲット]. ":),$item[名前]);
echo "n";
}
}
}
else
{
printf(%s%s
,
$indent . $this->closed,
$PHP_SELF,
$urlname, $QUERY_STRING,
$this->name);
echo "n"
}
}
}
?>
menu2.php:
include(menu) .php);
$submenu = 新しいメニュー(サブメニュー);
$submenu->add(サブ項目 2, vote.php3); $main = 新しいメニュー(メイン);
$main->add(メイン項目 1, vote.php3?);
$main->add(メイン項目 2, vote.php3);サブメニュー);
$main->add(メイン項目 3, vote.php3);
$second = 新しいメニュー(二次メニュー)
$sec- >add(Secondary Items 2, vote.php3);
$main->show();
//$second->show();
menu2.php を実行してメニューの効果を確認します。
http://www.bkjia.com/PHPjc/532235.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/532235.html
技術記事
C/S を使用したことがある人にとっては、メニューから関数を選択するのが最も基本的な操作ですが、PHP では次のような方法でメニュー関数を実装することも簡単です。クリスティン /.. .