ホームページ > PHPフレームワーク > ThinkPHP > ThinkPHP6を使ってデータテーブル表示を実現

ThinkPHP6を使ってデータテーブル表示を実現

王林
リリース: 2023-06-21 08:37:39
オリジナル
2071 人が閲覧しました

インターネット技術の発展に伴い、特にデータの管理と分析が必要な企業や組織などの機関にとって、データの需要が高まっています。この文脈において、データ テーブルはデータを表示する非常に重要かつ一般的に使用される方法になっているため、ThinkPHP6 を使用してデータ テーブルを表示する方法を習得することが非常に必要になっています。

ThinkPHP は、MVC アーキテクチャとオブジェクト指向プログラミングのアイデアを使用する人気のある PHP 開発フレームワークです。クラス ライブラリのカプセル化とモジュール設計を通じて、コードの可読性、保守性、開発効率を大幅に向上させることができます。 ThinkPHP6 を使用してデータテーブルを表示する場合、いくつかの便利な方法とツールも提供されていますので、ThinkPHP6 を使用してデータテーブルを表示する方法を紹介します。

  1. データベース テーブルの作成とデータ モデル クラス

まず、データベース内にテーブルを作成し、これらのデータを呼び出して操作するためのデータベース モデル クラスを作成する必要があります。たとえば、ID、名前、年齢、性別の 4 つのフィールドを含む学生情報テーブルを作成します。次に、これらのフィールドをデータベースに作成し、同時に ThinkPHP の Model ディレクトリに StudentModel.php データ モデル クラスを作成して、これらのデータを呼び出して操作します。コードは次のとおりです。 #Controller とビュー

  1. 次に、データ ロジックを処理してページをレンダリングするために、ThinkPHP のコントローラー ディレクトリにコントローラー クラス StudentController.php を作成する必要があります。このうち、Controller クラスの assign メソッドを使用すると、データベースから取得したデータをビューで使用するテンプレート変数に代入できます。
ビューに関しては、layui などのフロントエンド フレームワークを使用してデータ テーブルをレンダリングおよび表示できます。このアイデアは、データを json 形式でフロントエンドに提供し、そのデータをテーブルにレンダリングすることです。たとえば、次は、layui を使用して実装された学生情報テーブル表示ページです。

コントローラ コードは次のとおりです。

namespace appmodel;

use thinkModel;

class StudentModel extends Model
{
    protected $table = 'student';

    public function getStudents()
    {
        return $this->field('id,name,age,gender')->order('id')->select();
    }
}
ログイン後にコピー

ビュー コードは次のとおりです。

namespace appcontroller;

use appmodelStudentModel;
use thinkController;

class StudentController extends Controller
{
    public function index()
    {
        $studentModel = new StudentModel();
        $students = $studentModel->getStudents();
        $this->assign('students', $students);
        return $this->fetch('index');
    }
}
ログイン後にコピー

3. ページング機能と検索機能を追加します。

ユーザー エクスペリエンスを最適化するために、学生情報フォームにページング機能と検索機能を追加することもできます。 ThinkPHP6 では、これら 2 つの機能を実装すると非常に便利です。具体的な手順は以下のとおりです。

(1) ページネーション関数

取得した生徒情報データを、ThinkPHP6 が提供する paginate() メソッドを使用して、指定されたページ表示データサイズに合わせて表示します。 .ページネーションの具体的なコードは次のとおりです:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>学生信息表格</title>
    <link rel="stylesheet" href="/layui/css/layui.css">
    <script src="/layui/layui.js"></script>
</head>

<body>
    <table class="layui-table">
        <thead>
            <tr>
                <th>ID</th>
                <th>姓名</th>
                <th>年龄</th>
                <th>性别</th>
            </tr>
        </thead>
        <tbody>
            {% for student in students %}
            <tr>
                <td>{{ student.id }}</td>
                <td>{{ student.name }}</td>
                <td>{{ student.age }}</td>
                <td>{{ student.gender }}</td>
            </tr>
            {% endfor %}
        </tbody>
    </table>
</body>

</html>
ログイン後にコピー

ビューでは、layui などのフロントエンド フレームワークを使用してページネーションを表示できます。たとえば、次のように追加します:

$students = $studentModel->paginate(10);
ログイン後にコピー

(2)本文内の検索関数

ThinkPHP6 が提供する where() メソッドを使用して、検索キーワードに基づいて学生情報データをフィルタリングできます。具体的なコードは次のとおりです。 TableFilter などのフロントエンドプラグインを使用して検索表示や関数実装を実現します。たとえば、ヘッダーに次のように追加します。

<div id="page" style="margin-top: 30px; text-align: center;"></div>

<!-- 定义js -->
<script>
    layui.use(['laypage'], function () {
        var laypage = layui.laypage;
        laypage.render({
            elem: 'page', //注意,这里的 test1 是 ID,不用加 # 号
            count: {{ students.total }}, //数据总数
            limit: {{ students.list_rows }}, //显示的条数
            curr: {{ students.currentPage }}, //当前页数
            theme: '#1E9FFF',
            jump: function (obj, first) {
                //首次不执行
                if (!first) {
                    //跳转到新页面
                    window.location.href = '?page=' + obj.curr;
                }
            }
        });
    });
</script>
ログイン後にコピー

summary

ThinkPHP6 を使用してデータテーブル表示を実現します。多用途、便利、高速で、企業やインターネット上でデータを管理したい人向け 管理と分析は、組織や個人に非常に価値のあるツールを提供します。以上がThinkPHP6を使ってデータテーブルを表示する方法です。これらのスキルを習得すると、さまざまな表示ニーズを簡単に実現し、データの表示、管理、分析の効率を向上させることができます。

以上がThinkPHP6を使ってデータテーブル表示を実現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート