ホームページ > バックエンド開発 > PHPチュートリアル > 設計ツリー構造製品分類ステータス、ツリー構造製品分類_PHPチュートリアル

設計ツリー構造製品分類ステータス、ツリー構造製品分類_PHPチュートリアル

WBOY
リリース: 2016-07-13 10:16:02
オリジナル
1190 人が閲覧しました

デザインツリー構造製品分類ステータス、ツリー構造製品分類

設計ツリー構造製品分類ステータス、ツリー構造製品分類_PHPチュートリアル 1 php 2 header('Content-Type: text/html; charset=utf-8'); 3 $mp = 配列( 4 '名前' => '携帯電話' => 配列( 5 配列('名前' => '非スマートフォン')、 6 配列('名前' => 'スマートフォン', '子供' =>配列( 7 array('name' => 'Android'), 8 配列('名前' => 'Mac')、 9 array('name' => 'WP machine') 10 )) 11) 12 ); 13 14 $cp =配列( 15 '名前' => 'コンピューター', '子供' => 配列( 16 配列('名前' => 'コンピューターマシン', '子供' => 配列( 17 配列('名前' => 'ノートブック')、 18 array('name' => 'Ultrabook'), 19 配列('名前' => 'ゲームブック') 20 ))、 21 array('name' => 'コンピュータアクセサリ', '子供' => array( 22 配列('名前' => 'CPU')、 23 配列('名前' => 'マザーボード') 24 )) 25) 26 ); 27 28 $goodsCats = array($mp, $cp); 29 30 // $goodsCat のすべての要素を再帰的に走査します 31 関数ツリー($goodsCats, $deep=0){ 32 //1: すべてのカテゴリを保持するコンテナを定義します 33 static $tree = array(); 34 //2: 分類のレベルを記録する変数を定義します 35 ++$ディープ; 36 foreach($goodsCats as $goodsCat){ 37 $treeCat = array('name' => $goodsCat['name']); //カテゴリ名を配列に格納します 38 $treeCat['deep'] = $deep; //分類レベルを配列に格納します 39 $tree[] = $treeCat; //各サイクルの分類を保存 40 //各カテゴリの下にサブカテゴリがあるかどうかを確認し、ある場合はトラバースを続行します 41 if(isset($goodsCat['子供たち'])){ 42ツリー($goodsCat['子供'],$deep); 43 } 44 } 45 戻る $tree; 46} 47 48 $treeData = ツリー($goodsCats); 49 50 foreach($treeData as $catData){ 51 echo str_repeat('------',($catData['deep']-1)).$catData['name']."
; 52 } コードを表示

ツリー構造データテーブルの設計方法

例えば私が使っているテーブル構造はこんな感じです
type_id int カテゴリ識別子、主キーの重複なし
type_name char(50) 空の型名は不可、重複も不可です。 allowed
type_father int を空にすることはできません。トップ ノードの場合、このカテゴリの親カテゴリ識別子は一意の値に設定されます。
type_layer char(6) の初期値は 000000 です。カテゴリの -order traversal は主に検索データベースを削減するためです。 このテーブル構造に従って、上記の例のテーブルに記録されたデータを見てみましょう: type_id type_name type_father type_layer
1 Total category 0 000000
2 category 1 1 010000
3 カテゴリ 1.1 2 010100
4 カテゴリ 1.2 2 010200
5 カテゴリ 2 1 020000
6 カテゴリ 2.1 5 020100
7 カテゴリ 3 1 030000
8 カテゴリ 3.1 7 030100
9 カテゴリ 7 030200
10 カテゴリ 1.1.1 3 010101
…… type_layer のサイズで検索します。 SELECT * FROM Type_table_2 ORDER BY type_layer は、次のようにレコード セットをリストします。 type_id type_name type_father type_layer
1 Total category 0 000000
2 category 1 1 010000
3 category 1.1 2 010100
10カテゴリ1.1.1 3 010101
4 カテゴリ1.2 2 010200
5 カテゴリ2 1 020000
6 ……全文の続き>>

JAVA でプログラミングするための典型的なプロジェクト名をいくつか提供してください。詳細な説明が役立つでしょう

1: チャット プロジェクト
チャット プロジェクトは主に、模擬オンライン チャット システムを完成させることで、TCP/IP、ソケット プログラミング、C/S モード プログラミング、スレッドの使用に関する全員の能力を訓練します。
このプロジェクトに関係する知識ポイントには、JavaSE、ソケット、C/S、マルチスレッドなどが含まれます。

2: Tank スタンドアロン バージョン/ピクチャー バージョン/オンライン バージョン プロジェクト
これら 3 つのプロジェクトは、誰もが大好きなミニゲームの形式を通じて JavaSE を包括的に使用する能力を訓練し、最初はオブジェクト指向プログラミングの概念を使用して予備演習を行うことができます。設計能力とマルチスレッド プログラミングの基本的な習得。
これら 3 つのプロジェクトに関連するナレッジ ポイントには、JavaSE、ソケット、C/S、マルチスレッド、AWT、GUI、イベント処理、Eclipse アプリケーション、デバッグ デバッグ、プロパティ ファイルの使用、画像処理などが含まれます。

3: 戦車戦のデザイン パターン バージョン
このプロジェクトは、上記のプロジェクトをプレビューした後、デザイン パターンについての全員の理解を促進することを目的としています。ある程度のコードがあり、オブジェクト指向を理解していれば、単一の設計パターンを理解するのは非常に簡単ですが、複数の設計パターンを包括的に使用するには、同時に複数の設計パターンについての包括的な演習が必要になると思います。レイヤー アーキテクチャ、SSH フレームワークなどを理解したい場合は、より徹底的かつ低レベルで理解するには、設計パターンも不可欠です。複数のデザインパターンを総合的に活用することで正式に理解を深め、その後の講座の準備をするプロジェクトです。
このプロジェクトに関係する知識ポイントには、JavaSE、マルチスレッド、AWT、GUI、イベント処理、Eclipse アプリケーション、デバッグ デバッグ、プロパティ ファイル アプリケーション、シングルトン モード、ファクトリー シリーズ モード、ストラテジー モード、オブザーバー モード、ChainOfResponsibility モード、コンポジット モードが含まれます。そしてデザインパターンの総合適用など。

4: BBS2006 / BBS2007 プロジェクト
2 つの BBS プロジェクトにより、完全なフロントエンド表示とバックエンド管理を備えたフォーラム システムが完成しました。フォーラム システムのビジネス ロジックは誰にとっても馴染みのある、優れた入門システムです。 JavaWeb開発。しかし、ビジネス ロジックが単純すぎるため、Shangxuetang は現在のカリキュラム システムで検索項目に置き換えました。
このプロジェクトに関係する知識ポイントには、JDBC、データベース、HTML、CSS、Java スクリプト、AJAX、ページング、ツリー構造の設計とプレゼンテーション、JSP、サーブレット、セッションなどが含まれます。

6: エンタープライズ検索プロジェクト
Google や Baidu のシンプルなページの背後では、クロール/インデックス付け/検索/キャッシュなどの最先端のテクノロジーが、エンタープライズ ナレッジ ベース A の開発において決定的な役割を果たしています。システム/ナレッジ管理システム/文書管理システムなどの多数のアプリケーションが存在するため、多くの企業が検索システムを適用する必要性が高く、このプロジェクトは、オープンソースの検索エンジン シリーズ プロジェクト/スパイダー プログラムを通じて効率的な検索システムを構築します。このシステムは、最初のレベルのプロジェクトの中で、学生が検索エンジンの原理を理解するのにも役立ちます。また、予備的なユーザー管理/ツリー表示やその他の知識ポイントも統合されています。
このプロジェクトに関係するナレッジポイントには、クロール、インデックス付け、検索、キャッシュ、JDBC、データベース、HTML、CSS、Java スクリプト、AJAX、ページング、ツリー構造の設計と表示、JSP、サーブレット、セッションなどが含まれ、詳細な知識が含まれます。検索関連のオープンソース系ソフトウェア(Luceneなど)を解説し、検索エンジンの原理も詳しく紹介しています。

7: 金商オンラインモールプロジェクト
このシステムは、商品表示、商品管理、商品カテゴリ管理、ショッピングカート、会員管理などの機能を統合し、簡単な操作、豊富な機能、完璧な権限管理を提供し、ユーザーに低コストで、高効率なオンラインショッピングモール構築ソリューション。このプロジェクトでは、製品カテゴリのデザインにツリー状の階層設計構造が採用されており、フロント デスクでカテゴリごとにすべての製品の詳細を参照し、商品を購入するための注文を出し、ショッピング カートのステータスと購入ユーザーからのフィードバック情報を確認できます。システムのバックエンドでは、メンバーの管理、製品や製品カテゴリの管理が可能です...残りの全文>>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/899961.html技術記事デザインツリー構造の製品分類ステータス、ツリー構造の製品分類 1? php 2 header ('Content-Type: text/html; charset=utf-8' ); 3 $mp = array ( 4 'name' = '携帯電話' , 'children' = 配列...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート