データベースから取得した機密データを次のようにフォーマットします。
ニュース
--スポーツニュース
--エンターテインメントニュース
金融
--外国為替
--金融
- クラスツリー
- {
- /**生データ*/
- public $original;
- /**IDキー名*/
- public $id;
- /**父親IDのキー名*/
- public $parentId;
- /**初期化中のID*/
- protected $initId;
- /**ノードレベル*/
- protected $thisLevel = 0;
- /**最後の木* /
- protected $tree = array();
- /**
- * 构造関数数
- +---------------------------- --------------
- * @access public
- +---------------------------- -------------
- * @param array $original
- * コンストラクター
- +------------------------------------------ ---
- * @access public
- +---------------------------------------- --------
- * @param array $original 元データ
- * @param string $id 親 ID のキー名
- * @param string $parentId 親 ID のキー名
- +-------- ----------- -----------------------
- * @return void
- * @param string $id
- * 初期化
- +------------------------------------------ ---
- * @ access public
- +---------------------------------------- -----
- * @param array $original 元データ
- * @param string $id idのキー名
- * @param string $parentId 親idのキー名
- +------------- ----------------- -----------------------
- * @return void
- * @param string $parentId 父
- * 初期ノードを取得します
- +------------------------------------------ ----- ---
- * @access protected
- +------------------------------------- ----- ------
- * @param int $parentId 初期ノードのレベル
- +------------------------ ---------- ---------------
- * @return array $parentTree
- +---- --------------------------------------
- * @return void
- */
- public function __construct ($original='',$id='',$parentId='')
- {
- if($original && $id && $parentId)
- {
- $this->initialize($original,$id,$ parentId);
- }
- }
- /**
- * 初開始化
- +-------------------------------- ----------
- * @access public
- +--------------------------------- --------
- * @param array $original
- * サブツリーを取得
- +------------------------------------------ ---- ---
- * @access protected
- +------------------------------------ ---- ------
- * @param int $id ノード ID
- * @param string $levelTag インデントマーク
- +----------- -- ------------------------
- * @return void
- * @param string $id
- * ノードのレベルを取得します
- +----------------------------------------------------- ----- -------
- * @access protected
- +---------------------------- ----------------- -------------
- * @param int $parentId ノードの親 ID
- +----- ------------------- ------------------------
- * @return void
- * @param string $parentId 父
- * 完全なツリーを入手します
- +------------------------------------------ --- -------
- * @access public
- +--------------------------------- --------------- ------------------------
- * @param int $level どのレベルから取得するか
- * @param string $levelTag インデントタグ
- +-------------------------- -----------------------------------
- * @return array $this->tree 完全なツリー
- +-------- ----------------------------------
- * @return void
- */
- public functionInitialize($original, $id,$parentId)
- {
- $this->original = $original;
- $this->id = $id;
- $this->parentId = $parentId;
- }
- /**
- * 获取初节点
- +------------------------------------------ --
- * @access protected
- +----------------------------------------------------- -----
- * @param int $parentId 最初&
- +-------------------------------- --------------
- * @return array $parentTree
- */
- protected function getParentTree($parentId)
- {
- $parentTree = array();
- foreach($this-> ;元の $key=>$value)
- {
- if($value[$this->parentId] == $parentId)
- {
- array_push($parentTree,$value);
- }
- }
- return $parentTree;
- }
- /**&*/
- protected function getChildrenTree($id,$levelTag)
- {
- foreach($this->original as $key=>$value)
- {
- if($id == $value[$this->parentId])
- {
- if($levelTag)
- {
- $this->getLevel($value[$this->parentId]);
- $value ['levelTag'] = str_repeat($levelTag,$this->thisLevel);
- $this->thisLevel = 0;
- }
- $this->tree[] = $value;
- $this-> getChildrenTree($value[$this->id],$levelTag);
- }
- }
- }
-
-
- /**
- * 获取&🎜 +------------- ------------------------------------🎜 * @access protected🎜 +------ ----------------------------------------🎜 * @param int $parentId 节点的父id🎜 +------------------------------------------ ----🎜 * @return void🎜 */🎜 protected function getLevel($parentId)🎜 {🎜 foreach($this->gt;original as $key=>$value)🎜 {🎜 if($parentId == $ value[$this->id] && $parentId != $this->initId)🎜 {🎜 $this->thisLevel++;🎜 $this->getLevel($value[$this->parentId]) ;🎜 }🎜 }🎜 }🎜🎜🎜 /**&*/🎜 public function getTree($parentId=0,$levelTag='')🎜 {🎜 $this->initId = $parentId;🎜 $parentTree = $this->getParentTree($parentId);🎜🎜 foreach($parentTree as $key=>$value)🎜 {🎜 $this->tree[] = $value;🎜 $this->getChildrenTree( $value[$this->id],$levelTag);🎜 }🎜🎜 return $this->tree;🎜 }🎜🎜}
-
-
-
-
- $conf = array(
- 1 => array('id'=>'1','parentid'=>0,'name'=>'1'),
- 2 => ; array('id'=>'2','parentid'=>0,'name'=>'2'),
- 3 => array('id'=>'3','親 ID'=>1,'名前'=>'1-1'),
- 4 => array('id'=>'4','親 ID'=>1,'名前'=> ;'1-2'),
- 5 => array('id'=>'5','parentid'=>2,'name'=>'2-1'),
- 6 => ; array('id'=>'6','parentid'=>3,'name'=>'1-1-1'),
- 7 => 7','parentid'=>4,'name'=>'1-2-1'),
- 8 => array('id'=>8','parentid'=>5 ,'name'=>'2-1-1'),
- 9 => array('id'=>9','parentid'=>8,'name'=>'2- 1-1-1')
- );
-
- $tree = 新しいツリー($conf,'id','parentid');
- $arr = $tree->getTree(0,' ');
- foreach($arr as $val)
- {
- if($val['levelTag'])
- {
- echo $val['levelTag'].'|- ';
- }
- echo $val[' name'].'
';
- }
-
- ?>
复制代码
- クラスツリー
- {
- /**生データ*/
- public $original;
- /**IDキー名*/
- public $id;
- /**父親IDのキー名*/
- public $parentId;
- /**初期化中のID*/
- protected $initId;
- /**ノードレベル*/
- protected $thisLevel = 0;
- /**最後の木* /
- protected $tree = array();
- /**
- * 构造関数数
- +---------------------------- --------------
- * @access public
- +---------------------------- -------------
- * @param array $original
- * コンストラクター
- +------------------------------------------ ---
- * @access public
- +---------------------------------------- --------
- * @param array $original 元データ
- * @param string $id 親 ID のキー名
- * @param string $parentId 親 ID のキー名
- +-------- ----------- -----------------------
- * @return void
- * @param string $id
- * 初期化
- +------------------------------------------ ---
- * @ access public
- +---------------------------------------- --------
- * @param array $original オリジナルデータ
- * @param string $id id のキー名
- * @param string $parentId 親 id のキー名
- +------ -------------------- -----------------------
- * @return void
- * @param string $parentId 父
- * 初期ノードを取得します
- +------------------------------------------ ----- ---
- * @access protected
- +------------------------------------- ----- ------
- * @param int $parentId 初期ノードのレベル
- +------------------------ ---------- ---------------
- * @return array $parentTree
- +---- --------------------------------------
- * @return void
- */
- public function __construct ($original='',$id='',$parentId='')
- {
- if($original && $id && $parentId)
- {
- $this->initialize($original,$id,$ parentId);
- }
- }
- /**
- * 初開始化
- +-------------------------------- ----------
- * @access public
- +--------------------------------- --------
- * @param array $original
- * サブツリーを取得
- +------------------------------------------ ---- ---
- * @access protected
- +------------------------------------ ---- ------
- * @param int $id ノード ID
- * @param string $levelTag インデントマーク
- +----------- -- ------------------------
- * @return void
- * @param string $id
- * ノードのレベルを取得します
- +----------------------------------------------------- ----- -------
- * @access protected
- +---------------------------- ----------------- -------------
- * @param int $parentId ノードの親 ID
- +----- ------------------- ------------------------
- * @return void
- * @param string $parentId 父
- * 完全なツリーを入手します
- +------------------------------------------ ------ -------
- * @access public
- +---------------------------- ------------------- -------------
- * @param int $level どのレベルから取得するか
- * @param string $levelTagタグをインデントします
- +--------------- ----------------------------- ---
- * @return array $this->tree 完全なツリー
- +-------- ----------------------------------
- * @return void
- */
- public functionInitialize($original, $id,$parentId)
- {
- $this->original = $original;
- $this->id = $id;
- $this->parentId = $parentId;
- }
- /**
- * 获取初节点
- +------------------------------------------ --
- * @access protected
- +----------------------------------------------------- -----
- * @param int $parentId 最初&
- +-------------------------------- --------------
- * @return array $parentTree
- */
- protected function getParentTree($parentId)
- {
- $parentTree = array();
- foreach($this-> ;元の $key=>$value)
- {
- if($value[$this->parentId] == $parentId)
- {
- array_push($parentTree,$value);
- }
- }
- return $parentTree;
- }
- /**&*/
- protected function getChildrenTree($id,$levelTag)
- {
- foreach($this->original as $key=>$value)
- {
- if($id == $value[$this->parentId])
- {
- if($levelTag)
- {
- $this->getLevel($value[$this->parentId]);
- $value ['levelTag'] = str_repeat($levelTag,$this->thisLevel);
- $this->thisLevel = 0;
- }
- $this->tree[] = $value;
- $this-> getChildrenTree($value[$this->id],$levelTag);
- }
- }
- }
-
-
- /**
- * 获取&🎜 +------------- ------------------------------------🎜 * @access protected🎜 +------ ----------------------------------------🎜 * @param int $parentId 节点的父id🎜 +------------------------------------------ ----🎜 * @return void🎜 */🎜 protected function getLevel($parentId)🎜 {🎜 foreach($this->gt;original as $key=>$value)🎜 {🎜 if($parentId == $ value[$this->id] && $parentId != $this->initId)🎜 {🎜 $this->thisLevel++;🎜 $this->getLevel($value[$this->parentId]) ;🎜 }🎜 }🎜 }🎜🎜🎜 /**&*/🎜 public function getTree($parentId=0,$levelTag='')🎜 {🎜 $this->initId = $parentId;🎜 $parentTree = $this->getParentTree($parentId);🎜🎜 foreach($parentTree as $key=>$value)🎜 {🎜 $this->tree[] = $value;🎜 $this->getChildrenTree( $value[$this->id],$levelTag);🎜 }🎜🎜 return $this->tree;🎜 }🎜🎜}
-
-
-
-
- $conf = array(
- 1 => array('id'=>'1','parentid'=>0,'name'=>'1'),
- 2 => ; array('id'=>'2','parentid'=>0,'name'=>'2'),
- 3 => array('id'=>'3','親 ID'=>1,'名前'=>'1-1'),
- 4 => array('id'=>'4','親 ID'=>1,'名前'=> ;'1-2'),
- 5 => array('id'=>'5','parentid'=>2,'name'=>'2-1'),
- 6 => ; array('id'=>'6','parentid'=>3,'name'=>'1-1-1'),
- 7 => 7','parentid'=>4,'name'=>'1-2-1'),
- 8 => array('id'=>8','parentid'=>5 ,'name'=>'2-1-1'),
- 9 => array('id'=>9','parentid'=>8,'name'=>'2- 1-1-1')
- );
-
- $tree = 新しいツリー($conf,'id','parentid');
- $arr = $tree->getTree(0,' ');
- foreach($arr as $val)
- {
- if($val['levelTag'])
- {
- echo $val['levelTag'].'|- ';
- }
- echo $val[' name'].'
';
- }
-
- ?>
复制代码
|