ホームページ  >  記事  >  PHPフレームワーク  >  ThinkPHP6 で MySQL を使用してページング クエリを実行する方法

ThinkPHP6 で MySQL を使用してページング クエリを実行する方法

PHPz
PHPzオリジナル
2023-06-20 14:01:571484ブラウズ

インターネットの急速な発展に伴い、Web アプリケーションの開発はますます複雑になってきています。ページング クエリは、Web アプリケーションの一般的な機能の 1 つです。 ThinkPHP6 は、開発者がアプリケーションを迅速に開発できるようにする Web フレームワークです。この記事では、ThinkPHP6 で MySQL を使用してページ分割されたクエリを実行する方法について説明します。

まず、ThinkPHP6 でデータベースを作成する必要があります。 MySQL でデータベースを作成するステートメントは次のとおりです:

CREATE DATABASE `thinkphp6`;

次に、データ テーブルを作成する必要があります。 MySQL では、次のコマンドを使用してデータ テーブルを作成できます。

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `email` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

このコマンドは、「user」という名前のデータ テーブルを作成します。データ テーブルには、「id」、「username」、「email」の 3 つのフィールドが含まれています。このうち「id」が主キーとなります。

次に、ThinkPHP6 でデータベース接続を構成する必要があります。 config フォルダーでdatabase.php ファイルを見つけて開きます。このファイルでは、データベースの種類、ホスト名、ユーザー名、パスワード、データベース名などのデータベース接続情報を構成する必要があります。次のコードを使用して、データベース接続情報を設定できます。

<?php

return [
    'type'       => 'mysql',
    'hostname'   => '127.0.0.1',
    'database'   => 'thinkphp6',
    'username'   => 'root',
    'password'   => '',
    'hostport'   => '',
    'dsn'        => '',
    'params'     => [],
    'charset'    => 'utf8mb4',
    'collation'  => 'utf8mb4_general_ci',
    'prefix'     => '',
    'debug'      => true,
    'deploy'     => 0,
    'rw_separate'   => false,
    'master_num'    => 1,
    'slave_no'      => '',
    'read_master'   => false,
    'fields_strict' => true,
    'resultset_type' => 'array',
    'auto_timestamp' => false,
    'sql_explain' => false,
];

次に、ThinkPHP6 で MySQL を使用してページング クエリを実行する方法を示します。デモには thinkphp6 データ テーブルのデータを使用します。

ThinkPHP6 を使用してページング クエリを実行するのは非常に簡単です。モデル内で paginate メソッドを使用するだけです。このメソッドは、「$listRows」と「$simple」の 2 つのパラメータを受け入れます。 「$listRows」は各ページの行数を示し、「$simple」はシンプル モードかどうかを示します。コントローラーで次のコードを使用できます。

<?php

namespace appindexcontroller;

use thinkController;

class UserController extends Controller
{
    public function index()
    {
        $listRows = 10; // 每页显示的行数
        $user = model('User');
        $list = $user->paginate($listRows);
        return view('index', ['list' => $list]);
    }
}

上記のコードは、model('User') を使用して、「User」という名前のデータベース テーブルをクエリし、コントローラー内のページごとの行数を表示します。 10 行の場合は、ページ分割されたクエリに paginate メソッドを使用します。

次のコードを使用して、ビュー ファイルにデータを表示します。

<?php
foreach ($list as $item) {
    echo $item['id'] . ' ' . $item['username'] . ' ' . $item['email'] . '<br/>';
}
// 显示分页
echo $list->render();
?>

上記のコードは、結果セットを走査してビュー ファイルにデータを表示し、最後に $ を使用してデータを表示します。 list->render() メソッド ページネーション リンク。

概要:

この記事では、ThinkPHP6 でページ分割されたクエリに MySQL を使用する方法について説明しました。まずデータベースを作成し、次に「User」という名前のデータテーブルを作成しました。次に、データベース接続を構成し、モデルの paginate メソッドを使用してページネーション クエリを実装しました。最後に、クエリ結果をビュー ファイルに表示し、$list->render() メソッドを使用してページ分割されたリンクを表示します。読者の皆様も、この記事の内容を参考にして、ページングクエリ機能をご自身のアプリケーションに実装していただければ幸いです。

以上がThinkPHP6 で MySQL を使用してページング クエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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