Maison >cadre php >PensezPHP >méthode d'exécution du modèle thinkphp

méthode d'exécution du modèle thinkphp

WBOY
WBOYoriginal
2023-05-29 13:28:07457parcourir

ThinkPHP est un framework PHP populaire. Il dispose d'un moteur de modèles puissant qui peut réaliser la séparation du contrôleur PHP et de la vue HTML, améliorant ainsi l'efficacité du développement et la maintenabilité. Cet article présentera plusieurs méthodes d'exécution couramment utilisées des moteurs de modèles dans ThinkPHP.

1. Passer des variables

Le passage de variables est l'opération de base du moteur de modèle, et les variables en PHP peuvent être affichées dans le modèle. Par exemple :

Dans le contrôleur PHP, nous définissons une variable $name :

$name = 'John Doe';
$this->assign('name', $name);

Dans la vue HTML, nous sortons la variable via la balise template :

<html>
<head>
    <title>Hello <?php echo ($name); ?></title>
</head>
<body>
    <h1>Hello <?php echo ($name); ?></h1>
</body>
</html>

La syntaxe de base du moteur de modèle est utilisée ici, c'est-à-dire que $name est le nom de la variable dans la balise du modèle et ($name) est la syntaxe de sortie de la variable. $name 为模板标签中的变量名,($name) 为输出该变量的语法。

二、 循环输出

循环输出是模板引擎中常用的语法之一。我们可以使用 foreach 循环输出PHP中的数组。例如:

假设我们在PHP控制器中定义了一个数组:

$data = array(
    array('name'=>'John Doe', 'age'=>20),
    array('name'=>'Jane Doe', 'age'=>18)
);
$this->assign('data', $data);

在HTML视图中,我们使用 foreach 循环依次输出数组:

<html>
<head>
    <title>Student List</title>
</head>
<body>
    <h1>Student List</h1>
    <ul>
        <?php foreach($data as $item): ?>
        <li><?php echo ($item['name']); ?> - <?php echo ($item['age']); ?></li>
        <?php endforeach; ?>
    </ul>
</body>
</html>

这里使用了模板引擎中的两个语句,foreachendforeach,在循环语句中使用 $item 代表循环数组中的每一个元素。

三、 条件判断

除了循环语句,模板引擎还支持条件判断语句。可以根据PHP中变量的值输出不同的HTML内容。例如:

在PHP控制器中定义一个变量 $is_valid:

$is_valid = true;
$this->assign('is_valid', $is_valid);

在HTML视图中,使用 if-else 判断变量值,并输出不同的HTML内容:

<html>
<head>
    <title>Welcome</title>
</head>
<body>
    <?php if($is_valid): ?>
    <h1>Welcome</h1>
    <?php else: ?>
    <h1>Access Denied</h1>
    <?php endif; ?>
</body>
</html>

这里使用了模板引擎中的 if-else 语句和 endif

2. Sortie en boucle

La sortie en boucle est l'une des syntaxes couramment utilisées dans les moteurs de modèles. Nous pouvons utiliser foreach pour parcourir un tableau en PHP. Par exemple : #🎜🎜##🎜🎜#Supposons que nous définissions un tableau dans le contrôleur PHP : #🎜🎜#rrreee#🎜🎜#Dans la vue HTML, nous utilisons la boucle foreach pour afficher le tableau séquentiel:#🎜🎜#rrreee#🎜🎜#Deux instructions du moteur de modèle sont utilisées ici, foreach et endforeach, et $item représente chaque élément du tableau de boucles. #🎜🎜##🎜🎜#3. Jugement conditionnel #🎜🎜##🎜🎜#En plus des instructions de boucle, le moteur de modèle prend également en charge les instructions de jugement conditionnel. Différents contenus HTML peuvent être générés en fonction de la valeur des variables en PHP. Par exemple : #🎜🎜##🎜🎜#Définissez une variable $is_valid dans le contrôleur PHP : #🎜🎜#rrreee#🎜🎜#Dans la vue HTML, utilisez <code>if-else pour déterminer la variable value, Et afficher un contenu HTML différent : #🎜🎜#rrreee#🎜🎜#L'instruction if-else et l'instruction de fin endif dans le moteur de modèle sont utilisées ici, selon à la variable $is_valid La valeur génère un titre différent. #🎜🎜##🎜🎜#Ci-dessus sont plusieurs méthodes d'exécution couramment utilisées dans le moteur de modèles ThinkPHP, qui peuvent être sélectionnées en fonction des besoins réels. L'utilisation de moteurs de modèles peut améliorer l'efficacité du développement et la maintenabilité du code, et il est recommandé aux développeurs de les utiliser davantage. #🎜🎜#

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn