ホームページ > バックエンド開発 > PHPチュートリアル > PHP は再帰を使用して記事ツリーを生成します_PHP チュートリアル

PHP は再帰を使用して記事ツリーを生成します_PHP チュートリアル

WBOY
リリース: 2016-07-13 09:56:34
オリジナル
1341 人が閲覧しました

PHP は再帰を使用して記事ツリーを生成します

再帰関数を作成するときは、以前の実行の結果を保存するためにいくつかの静的変数をキャッシュして定義することを検討できます。おおよその手順は次のとおりです。 : まず、データベースからデータを取得して配列に配置し、次にデータをツリー状の配列に変換し、最後にこのツリー状の配列を HTML コードに変換します。例を見てみましょう

記事中心の技術サイトを運営していて、シリーズ記事もいくつかあるので、それらの記事を分類して同じカテゴリーに入れたいと思っています。

データベースはうまく設計されており、id と Fatherid を使用して分類するだけです。 Fatherid は親カテゴリを表し、id は記事の一意の ID です。レベルは制限されておらず、2 つのレベルにすることもできます。 3つのレベル。 Fatherid が 0 の場合は、トップレベルの記事を示します。

phpコード、主に再帰的

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

関数 category_tree($fatherid){

//require_once("mysql_class/config.inc.php");

//require_once("mysql_class/Database.class.php");

$db = 新しいデータベース(DB_SERVER、DB_USER、DB_PASS、DB_DATABASE);

$db->connect();

$sql = "「.TABLE_TASK.」からID、タイトル、URLを選択します。"

WHERE Fatherid=$fatherid および ispublic=1 ID asc で注文します";

$articles = $db->クエリ($sql);

$db->close();

while ($record = $db->fetch_array($articles)){

$i = 0;

if ($i == 0){

if($fatherid==0){

echo '

    ';

    }その他{

    echo '

      ';

      }

      }

      if($fatherid==0){

      echo '

    • ';

      $i++;

      if ($i > 0){

      エコー '

    ';

    }

    }

    }

電話:

?

1

category_tree(0) //最初にトップレベルの記事を抽出します

以上がこの記事の全内容ですが、皆さんに気に入っていただければ幸いです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/987717.html技術記事 PHP は再帰を使用して記事ツリーを生成し、再帰関数を作成します。マルチプログラムの実行効率を高めるために、いくつかの静的変数をキャッシュおよび定義することを検討してください。 ..
関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート