Dans ThinkPHP6, le moteur de modèles est un élément très important, il peut nous aider à restituer les vues et à afficher les données plus efficacement. Cet article explique comment utiliser le moteur de modèles dans ThinkPHP6.
1. Connaissance de base du moteur de modèles
- Définition du moteur de modèles
Un moteur de modèles est un outil qui convertit les données en HTML. Sa fonction principale est de séparer les vues et la logique métier. Normalement, nous traitons les données et les vues séparément, puis combinons les deux via un moteur de modèles et enfin les présentons à l'utilisateur.
- Classification des moteurs de modèles
Dans ThinkPHP6, les moteurs de modèles sont principalement divisés en deux types?: l'un est un moteur de modèles basé sur PHP (comme Smarty, Blade, etc.), et l'autre est un moteur de modèles basé sur syntaxe native.
- Avantages du moteur de modèles
Le moteur de modèles peut nous aider à séparer les vues et la logique métier, à améliorer la maintenabilité et la lisibilité du code, et peut rapidement modifier le style de mise en page et améliorer l'efficacité du développement.
2. Fonctionnement du moteur de modèle dans ThinkPHP6
- Création de fichiers modèles
Dans ThinkPHP6, nous pouvons créer rapidement un fichier modèle via la commande suivante?:
php think make:view Index/index
où Index représente le nom du contr?leur et index représente le nom de la méthode. Après avoir exécuté cette commande, un répertoire Index sera automatiquement généré dans le répertoire de l'application, et un fichier index.html sera créé dans ce répertoire.
- écrire des fichiers modèles
Après avoir créé le fichier modèle, nous pouvons écrire du HTML, CSS, JavaScript et d'autres codes selon nos besoins. Dans le fichier modèle, les données peuvent également être intégrées via la syntaxe du moteur de modèle.
Par exemple?:
<html>
<head>
<title>用戶列表</title>
</head>
<body>
<table>
<thead>
<tr>
<th>編號(hào)</th>
<th>用戶名</th>
<th>郵箱</th>
<th>注冊(cè)時(shí)間</th>
</tr>
</thead>
<tbody>
<?php foreach($users as $user): ?>
<tr>
<td><?php echo $user['id']; ?></td>
<td><?php echo $user['username']; ?></td>
<td><?php echo $user['email']; ?></td>
<td><?php echo $user['create_time']; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</body>
</html>
Dans le code ci-dessus, nous utilisons l'instruction de boucle foreach de PHP pour parcourir les données de la liste d'utilisateurs et restituer les données dans la page HTML.
- Assignation et utilisation des variables de modèle
Dans ThinkPHP6, nous pouvons utiliser la méthode d'affectation dans le contr?leur pour définir les variables du fichier modèle.
Par exemple?:
public function index()
{
// 獲取用戶數(shù)據(jù)
$users = Db::name('user')->select();
// 設(shè)置模板變量
$this->assign('users', $users);
// 渲染模板輸出
return $this->view->fetch();
}
Dans le code ci-dessus, nous obtenons d'abord les données utilisateur via la méthode Db::name('user')->select(), puis définissons les données via la méthode $this-> assign() dans les variables du modèle. Enfin, le fichier modèle est rendu dans une page HTML via la méthode return $this->view->fetch() et est envoyé au navigateur.
Dans le fichier modèle, vous pouvez obtenir la valeur de variable spécifiée via la syntaxe {{$variable name}}.
Par exemple?:
@foreach($users as $user)
<tr>
<td>{{$user['id']}}</td>
<td>{{$user['username']}}</td>
<td>{{$user['email']}}</td>
<td>{{$user['create_time']}}</td>
</tr>
@endforeach
Dans le code ci-dessus, nous utilisons la syntaxe {{$}} pour obtenir la valeur correspondante dans les données utilisateur et l'afficher dans la page HTML.
- Mise en ?uvre de la mise en page du modèle
Dans le développement réel, nous extrayons généralement le code commun (tel que l'en-tête, la queue, la barre latérale, etc.) dans toutes les mises en page pour le réutiliser dans d'autres pages.
Dans ThinkPHP6, nous pouvons implémenter cette fonction en utilisant un modèle de mise en page. Les opérations spécifiques sont les suivantes :
1) Créez un répertoire de mise en page dans le répertoire de l'application et créez un fichier base.html dans ce répertoire.
2) Définissez la mise en page dans le fichier base.html, comme l'en-tête, la queue et d'autres codes courants.
Par exemple?:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>{{$title}}</title>
</head>
<body>
<header>
<!-- 頭部代碼 -->
</header>
<main>
<!-- 主體代碼 -->
</main>
<footer>
<!-- 底部代碼 -->
</footer>
</body>
</html>
Dans le code ci-dessus, nous définissons la mise en page de base de la page HTML et utilisons la syntaxe {{$}} pour obtenir la valeur de la variable.
3) Utilisez la syntaxe d'extension et de section dans d'autres fichiers modèles pour hériter et utiliser des fichiers de mise en page publics.
Par exemple?:
@extends('layout/base')
@section('content')
<table>
<thead>
<tr>
<th>編號(hào)</th>
<th>用戶名</th>
<th>郵箱</th>
<th>注冊(cè)時(shí)間</th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td>{{$user['id']}}</td>
<td>{{$user['username']}}</td>
<td>{{$user['email']}}</td>
<td>{{$user['create_time']}}</td>
</tr>
@endforeach
</tbody>
</table>
@endsection
Dans le code ci-dessus, nous utilisons d'abord la syntaxe @extends pour hériter du fichier de mise en page public, puis utilisons la syntaxe @section et @endsection pour remplacer et étendre le contenu du modèle.
Conclusion
Grace à l'introduction de cet article, les lecteurs devraient avoir compris comment faire fonctionner le moteur de modèles dans ThinkPHP6, y compris la création de fichiers modèles, l'affectation et l'utilisation de variables de modèle, la mise en ?uvre de la mise en page des modèles, etc. Le moteur de modèles est une technologie importante dans le développement Web. La ma?trise de cette technologie peut améliorer l'efficacité du développement et la maintenabilité du code.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!