検索
ホームページphp教程php手册PHP での非関数の再帰呼び出しを無限に分類する 3 つの方法。

PHP での非関数の再帰呼び出しを無限に分類する 3 つの方法。

Jun 13, 2016 pm 12:06 PM
php関数分類データベース方法無制限設定移行再帰合格いいえ

PHP を無制限に分類するには、大きく 3 つの方法があります。

1. データベースは親クラス ID を設定することで一意のインデックスを作成し、関数の再帰呼び出しを使用して無限の分類を実現します。

2. データベース設計は特定の形式で整理され、mysql を使用して主要な関数 concat をクエリします。プログラムの実装は比較的単純です。

3. 3 番目のタイプについてはよくわかりません。アルゴリズムとデータ構造が配置に使用されているようです。

今日は主に 2 番目の方法について説明します。最初は情報が多く、本当に理解するのが難しかったです。でも、ようやく気づいたので、この記事が皆さんのお役に立てればと思い、エッセイを書きました。

1. データベース設計:


コードをコピー コードは次のとおりです:

--
-- テーブル ` のテーブル構造category`
--
CREATE TABLE IF NOT EXISTS `category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`catpath` varchar(255) DEFAULT NULL,
` name` varchar (255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
--
-- テーブル `category のデータをダンプしています`
--
INSERT INTO `category` (`id`, `catpath`, `name`) VALUES
(1, '0', 'Homepage'),
(2, ' 0-1', 'Linux OS')、
(3, '0-1', 'Apache サーバー')、
(4, '0-1', 'MySQL データベース')、
(5 , '0-1', 'PHP スクリプト言語')、
(6, '0-1-2', 'Linux システム チュートリアル')、
(7, '0-1-2' 、' Linux ネットワーク テクノロジー')、
(8、'0-1-2'、'Linux セキュリティの基礎')、
(9、'0-1-2-7'、'Linux LAMP') ,
(10, '0-1-3-10', 'apache Server');

ここで catpath の - リンク記号が固定されていないことを説明します。 、; などの特殊記号。

2. PHP コードの実装:

コードをコピーします コードは次のとおりです:

$conn = mysql_connect ( 'localhost', 'root', '' );
mysql_select_db ( 'test', $conn );
mysql_query ( 'set names UTF8' ); id,concat (catpath,'-',id) as abspath,name from category order by abspath";
$query = mysql_query ( $sql );
while ( $row = mysql_fetch_array ( $query ) ) {
/**
※最初の表示方法
*/
/*$space = str_repeat ( ' ', count (explode ( '-', $row ['abspath'] ) ) -
echo $ ); space . $ row ['name'] . '
';*/
/**
※第二の表示方法
*/
$space = str_repeat ( ', count (explode ( '-', $ row [' abspath'] ) ) - 1 );
$option .= '';
'


ここで注意すべき重要な点がいくつかあります。 1. concat 関数はデータベース クエリ フィールドで使用されます。わからない場合は、Google で調べてください。

2. 2 番目の場所では、主に php の str_repeat を使用してスペースを巧みに設定します。

エラーがある場合は、chenghuiyong1987@gmail.com に電子メールを送信するか、メッセージを残してください

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。