ホームページ >バックエンド開発 >PHPの問題 >PHPでクエリサブカテゴリをループする方法

PHPでクエリサブカテゴリをループする方法

zbt
zbtオリジナル
2023-08-04 15:39:451039ブラウズ

PHP でクエリ サブカテゴリをループする方法: 1. データベースと単純な分類テーブルを作成する必要があります; 2. カテゴリ テーブルにサンプル データを入力する必要があります; 3. PHP コードを書き始めるループ クエリのサブカテゴリ。分類; 4. データベースとの接続を確立する; 5. 接続が成功したかどうかを確認する; 6. サブカテゴリを再帰的にクエリするための関数を定義する; 7. サブカテゴリを再帰的にクエリする; 8. 最上位カテゴリをクエリする; 9.関数を呼び出してサブカテゴリをクエリします。 ;10. 機密データはありません。; 11. データベース接続を閉じるだけです。

PHPでクエリサブカテゴリをループする方法

このチュートリアルの動作環境: Windows10 システム、php8.1.3 バージョン、DELL G3 コンピューター。

PHP では、ループを使用してサブカテゴリをクエリできます。次の例では、データベースの例として単純なカテゴリ テーブルを使用し、ループを通じてサブカテゴリをクエリします。

1. データベースと簡単な分類テーブルを作成する必要があります。次の SQL ステートメントを使用してテーブルを作成できます:

CREATE TABLE categories (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
parent_id INT(11)
);

2. いくつかのサンプル データを分類テーブルに入力する必要があります。次の SQL ステートメントを使用してデータを入力できます:

INSERT INTO categories (name, parent_id) VALUES
('电子设备', NULL),
('手机', 1),
('电脑', 1),
('平板电脑', 1),
('苹果手机', 2),
('安卓手机', 2),
('华为手机', 2),
('戴尔电脑', 3),
('联想电脑', 3),
('iPad', 4),
('Surface', 4);

3. ループ内でサブカテゴリをクエリするための PHP コードの作成を開始できます。以下は簡単なサンプル コードです。

// 建立与数据库的连接(请根据自己的数据库情况修改连接信息)
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "test";
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 定义一个函数,用于递归查询子分类
function querySubcategories($parent_id, $conn) {
$sql = "SELECT id, name FROM categories WHERE parent_id = $parent_id";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo $row["name"] . "
";
// 递归查询子分类
querySubcategories($row["id"], $conn);
}
}
}
// 查询顶级分类
$query = "SELECT id, name FROM categories WHERE parent_id IS NULL";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo $row["name"] . "
";
// 调用函数查询子分类
querySubcategories($row["id"], $conn);
}
} else {
echo "没有任何分类数据";
}
// 关闭数据库连接
$conn->close();
?>

上記のコードでは、最初にデータベースに接続し、次にサブカテゴリを再帰的にクエリする関数 querySubcategories を定義します。その後、最上位カテゴリをクエリし、この関数を呼び出してそのサブカテゴリをクエリします。最後に、データベース接続を閉じます。

上記のコードを通じて、ループ内でサブカテゴリをクエリし、結果をページに出力できます。

概要:

ループ クエリ サブカテゴリの使用は一般的な要件です。 PHP で再帰を使用すると、すべてのサブカテゴリを簡単にクエリし、柔軟に処理できます。実際のアプリケーションでは、必要に応じてクエリ結果をさらに処理して表示できます

以上がPHPでクエリサブカテゴリをループする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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