ホームページ > バックエンド開発 > PHPチュートリアル > PHP は無限分類 (再帰的メソッド) を実装します。PHP recursion_PHP チュートリアル

PHP は無限分類 (再帰的メソッド) を実装します。PHP recursion_PHP チュートリアル

WBOY
リリース: 2016-07-13 09:44:58
オリジナル
997 人が閲覧しました

phpは無限分類(再帰法)、php再帰を実装しています

phpを学ぶ友人の中には、スキルアップの手段としてオンラインモールを構築しようとする人も多いと思います。商品分類や商品名などのさまざまな操作に慣れてきたら、無制限に分類リストを作成してみましょう。

インターネットで PHP Infinitus の分類を調べてみましたが、同じものが多く、また、コードが非常に多いので、どうやって学習すればよいでしょうか。 Infinitus の分類は自分たちでいじるべきです。

無限分類とは何ですか?

無限レベル分類は、部門組織、記事分類、主題分類などの分類手法です。無限レベル分類は、単純に分類として理解できます。実際、よく考えてみると、服は紳士服と婦人服、トップスとパンツに分けることができ、また年齢層によっても分類することができます。分類はどこにでも存在し、分類は「無限」であるように見えます。無限分類の必要性についてはここでは話しません。

無限分類の原理の紹介

無限分類というと「高尚」に見えるかもしれませんが、実は原理はとてもシンプルです。無制限の分類には、コードの創意工夫が必要なだけでなく、データベース設計の合理性も必要になります。無限の分類を満たすには、データベースに id と pid という 2 つの必須フィールドが必要です。 id はそれ自体を識別するために使用され、pid は親 ID を示すために使用されます。言い換えれば、各分類レコードはそれ自体を説明するだけでなく、最も密接に関係している別の ID も説明します。複雑そうに見えた問題も、ちょっとした工夫で解決しました。

早速、この記事の例を紹介します。

熱心な海賊ファンとして、この記事では「ワンピース」のキャラクター編成を例に挙げていきます。

データベースの準備:

時計ワンピースを作ろう:

リーリー

テストデータを挿入:

リーリー

これは今でも普及科学に基づいたワンピースの設定です、世界は海軍、海賊、革命軍の三大陣営に分かれています。海軍には青キジ、赤犬、黄猿という大将がいます。海賊には四皇、七武海、麦わらの一味がいます。四皇にはシャンクス、七武海にはドフラミンゴやクロコダイル、麦わらの一味にはゾロがいます。 (宣伝: ワンピースは本当に良いです)。

最終目標:

今日作っているのは、ドロップダウンリスト型とナビゲーションリンク型の2つの無限分類フォームです。レンダリングは直接アップロードされます:


ドロップダウンリストの式


ナビゲーションリンクスタイル

サンプルコード:

diaplayList()を呼び出してドロップダウンリストフォームを表示し、diaplayLinkを呼び出してナビゲーションリンクカテゴリを表示するUnlimitedクラスをカプセル化しました。カテゴリを追加 (addNodes()) および削除 (deleteNodes) することもできます。

リーリー

クラス内の関数は主に再帰関数の手法を採用しています。再帰関数を深く理解していれば、残りは理解できます。再帰関数を実装する 3 つの方法については、後のセクションで詳しく説明します。

別の例を見てみましょう:

まず分類情報テーブルを作成します:

リーリー

データを挿入します:

リーリー

以下はPHPコードです:

リーリー

最終結果を見てみましょう

この記事では再帰を使用した無限分類を紹介していますが、実際には、分類が増えるほど再帰の効率が低下することは誰もが知っています。再帰が何をするのか。

www.bkjia.com本当http://www.bkjia.com/PHPjc/1044258.html技術記事 PHP は無限分類 (再帰的手法) を実装しています。PHP 再帰は、PHP を学習する多くの友人がスキルを向上させる方法としてオンライン モールを構築しようとすると考えています。様々なペア商品...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート