HtmlTemplateFramework
[ class tree: HtmlTemplateFramework ] [ index: HtmlTemplateFramework ] [ all elements ]

Source for file htf_dat_menu.phl

Documentation is available at htf_dat_menu.phl

  1. <?php
  2. /**
  3.  * htf_dat_menuクラス
  4.  *
  5.  * menuデータを保持し、各種リンクタグを生成するクラス
  6.  *
  7.  * @package   HtmlTemplateFramework
  8.  * @subpackage data
  9.  * @access     public
  10.  * @author    Yamauchi Shogo <htf@as-prj.com>
  11.  * @version   $Id: htf_dat_menu.phl ,v 1.0 $;
  12.  ***/
  13.  
  14. require_once("htf_com_initialize.inc");        //共通初期処理
  15. require_once("htf_dat_menuitem.phl");        //menuitemクラス
  16.  
  17. /**
  18.  * menuデータを保持し、各種リンクタグを生成するクラス
  19.  *
  20.  * htfで取り扱うメニュー情報(リンク情報)を、コンストラクタに指定されたファイル名をサーチ・読み込みを行い、
  21.  * 情報を保有します。指定したファイル名は、以下の順序でサーチされます。<br>
  22.  * (1)現在の実行ディレクトリ<br>
  23.  * (2)実行ディレクトリから上位(ドキュメントルート・またはルートディレクトリまで)<br>
  24.  * (3)PHPに設定されたインクルードディレクトリ<br>
  25.  * 指定したファイルがみつからなかった場合には、初期値が設定されます。<br>
  26.  * <br>
  27.  * @access  public
  28.  * @author    Yamauchi Shogo <htf@as-prj.com>
  29.  ***/
  30. class htf_dat_menu extends htf_dat_menuitem{
  31.     
  32.     /**
  33.      * 引数のxmlファイル名をサーチし、メニュー情報を取得します。
  34.      * 
  35.      * @access     public
  36.      * @param     string    $menuxml    メニューファイル名(初期値はNULL)
  37.      * @return    void 
  38.      ***/
  39.     function htf_dat_menu($menuxml=NULL{
  40.         //プロパティ初期化
  41.         $this->initialize();
  42.         //menu定義xmlファイルのDOMオブジェクト&ルート取得
  43.         $strxmlpath htf_get_filepath(realpath('.')$menuxml);
  44.         //print($this->strxmlpath);
  45.         if (!htf_is_existsval($strxmlpath)) {
  46.             //見つからなかったらインクルードパスをサーチ
  47.             $strxmlpath htf_get_fileincludepath($menuxml);
  48.             if (!htf_is_existsval($strxmlpath)) {
  49.                 return;
  50.             }
  51.         }
  52.         $objdom domxml_open_file($strxmlpath);
  53.         $objroot $objdom->document_element();
  54.         if (htf_comp_xmlelementname(HTF_MENU_XML_MENU,$objroot->node_name())) {
  55.             //DOOMノードからプロパティ設定
  56.             $this->set_fromnode($objroot);
  57.             //子ノード(menuitem)の取得
  58.             $this->set_childnodes($objroot);
  59.         }
  60.         
  61.         return;
  62.     }
  63. }
  64. ?>

Documentation generated on Tue, 19 Sep 2006 06:20:42 +0900 by phpDocumentor 1.3.0