Maison développement back-end tutoriel php Explication détaillée de l'utilisation des modèles Blade dans Laravel

Explication détaillée de l'utilisation des modèles Blade dans Laravel

Sep 09, 2017 am 10:06 AM
blade laravel 详解

Blade est un moteur de modèles simple et puissant fourni par laravel. L'article suivant vous présente principalement les informations pertinentes sur l'utilisation des modèles Blade dans le framework Laravel. L'article le présente en détail à travers un exemple de code, ce qui est très utile. pour vos études ou votre travail. Il a une certaine valeur de référence et d’apprentissage. Les amis qui en ont besoin peuvent y jeter un œil ci-dessous.

Introduction

Blade ne vous empêche pas d'utiliser du code PHP natif dans les vues comme les autres moteurs de modèles PHP populaires, en fait, il suffit de compiler le Vue Blade dans le code PHP natif et mettez-le en cache. Le cache change lorsque la vue Blade change, ce qui signifie que Blade n'ajoute aucune charge de compilation à votre application. Les fichiers de vue Blade utilisent le suffixe .blade.php et sont généralement stockés dans le répertoire resources/views.

1. Héritage, fragment, espace réservé, composant, emplacement

1.1 Héritage

1.1.1 Définir le modèle parent


Laravel/resources/views/base.blade.php
Copier après la connexion

1.1.2 Héritage du modèle enfant

Chemin : Laravel/resources/views /child .blade.php


@extends('base')
Copier après la connexion

1.2 Fragment

1.2.1 Fragment de définition du modèle parent


@section('part')
// 中间内容即使一个片段
@show
Copier après la connexion

1.2.2 Fragment de remplissage du sous-modèle


@section('part')
Copier après la connexion

Contenu de remplissage du fragment


@endsection
Copier après la connexion
Copier après la connexion

1.3 Espace réservé

1.3.1 Espace réservé du modèle parent :


@yield('title')
Copier après la connexion

1.3.2 Espace réservé de remplissage du sous-modèle

Le premier remplissage (texte) :


@section('title' , '填充的文本占位')
Copier après la connexion

Le deuxième type de remplissage (texte ou html)


@section('title')
Copier après la connexion

Espace réservé rempli


@endsection
Copier après la connexion
Copier après la connexion

1.4 Composants, slots

1.4.1 Définir les composants

Chemin : Laravel/resources/views/component.php

<🎜. >


<p class=&#39;component&#39;>
 <!-- $title,$content 变量实际上就是预定义的插槽 -->
 <p class=&#39;title&#39;>{{ $title }}</p>
 <p class=&#39;content&#39;>{{ $content }}</p>
</p>
Copier après la connexion
1.4.2 Utilisation du composant

Chemin : Laravel/resources/views/test.blade.php


@component(&#39;component&#39;)
 @slot(&#39;title&#39;)
  组件标题
 @endsolt
 
 @slot(&#39;content&#39;)
  组件内容
 @endslot
@endcomponent
Copier après la connexion

2. Affichage des données

2.1 Sortie d'échappement


{{ $name }}
Copier après la connexion
2.2 Sortie sans échappement



{!! $name !!}
Copier après la connexion
2.3 Sortie au format original


Le premier type (convient à une petite quantité) :



@{{ name }}
Copier après la connexion
Le deuxième type (convient à une grande quantité) :



@verbatim
{{ name }}
{{ sex }}
{{ age }}
@endverbatim
Copier après la connexion

3. Contrôle des processus

3.1 pour

Remarque :

  • Il n'y a pas de variable $loop

  • Non @empty

  • Il y a @break

  • Il y a @continue


@for ($i = 0; $i < 10; ++$i)
 {{ $i }} <br />
@endfor
Copier après la connexion

3.2 foreach

Remarque :

  • Là est une variable $loop

  • Non @empty

  • Il y a @break

  • Il y a @ continuer


@foreach ($data as $k => $v)
 {{ $k }} <br />
@endforeach
Copier après la connexion

3.3 avant

Remarque :

  • a une variable $loop

  • doit avoir @empty

  • a @break

  • Il y a @continue


@foreach ($data as $k => $v)
 {{ $k }} <br />
@empty
Copier après la connexion
Le tableau n'a pas de données



@endforeach
Copier après la connexion

4. Utiliser PHP natif


@php 
echo "使用原生 PHP";
@endphp
Copier après la connexion

5. Contenir des sous-vues

Remarque

  • La sous-vue incluse peut référencer toutes les variables définies par la vue parent.

  • Vous pouvez transmettre des données supplémentaires à la vue enfant

Définir la vue parent parent.blade.php et inclure la vue enfant child.blade .php, et transmettre des données supplémentaires


/**
 * 父视图
 * 父视图拥有变量 $name = &#39;chenxuelong&#39;
 */

<p class=&#39;parent&#39;>
 <p class=&#39;username&#39;>{{ $username }}</p>
 <p class=&#39;child&#39;>
  <!-- 包含子视图 -->
  @include(&#39;child&#39; , [
   &#39;other&#39; => &#39;额外数据&#39;
  ])
 </p>
</p>

/**
 * 子视图
 */
 <p class=&#39;username&#39;>{{ $username }}</p>
 <p class=&#39;other&#39;>{{ $other }}</p>
Copier après la connexion

Résumé

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Apr 01, 2025 pm 02:45 PM

Méthode pour obtenir le code de retour lorsque l'envoi par e-mail de Laravel échoue. Lorsque vous utilisez Laravel pour développer des applications, vous rencontrez souvent des situations où vous devez envoyer des codes de vérification. Et en réalité ...

La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? Mar 31, 2025 pm 11:24 PM

Laravel Schedule Tâche d'exécution de dépannage non réactif Lorsque vous utilisez la planification des tâches de calendrier de Laravel, de nombreux développeurs rencontreront ce problème: Schedule: Exécuter ...

Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Mar 31, 2025 pm 11:48 PM

La méthode de traitement de l'échec de l'e-mail de Laravel à envoyer le code de vérification est d'utiliser Laravel ...

Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Apr 01, 2025 am 07:09 AM

Comment implémenter la fonction du tableau de Cliquez sur personnalisé pour ajouter des données dans DCATADMIN (Laravel-Admin) lors de l'utilisation de DCAT ...

Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Apr 01, 2025 am 07:45 AM

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...

Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Apr 01, 2025 am 09:09 AM

Connexion de la base de données des locataires personnalisés dans le package d'extension multi-locataire Laravel Stancl / location Lors de la construction d'applications multi-locataires à l'aide du package d'extension multi-locataire Laravel Stancl / location, ...

Laravel Eloquent Orm dans Bangla Partial Model Search) Laravel Eloquent Orm dans Bangla Partial Model Search) Apr 08, 2025 pm 02:06 PM

Laravelelognent Model Retrieval: Faconttement l'obtention de données de base de données Eloquentorm fournit un moyen concis et facile à comprendre pour faire fonctionner la base de données. Cet article présentera en détail diverses techniques de recherche de modèles éloquentes pour vous aider à obtenir efficacement les données de la base de données. 1. Obtenez tous les enregistrements. Utilisez la méthode All () pour obtenir tous les enregistrements dans la table de base de données: usApp \ Modèles \ Post; $ poters = post :: all (); Cela rendra une collection. Vous pouvez accéder aux données à l'aide de Foreach Loop ou d'autres méthodes de collecte: ForEach ($ PostsAs $ POST) {echo $ post->

Géospatial de Laravel: optimisation des cartes interactives et de grandes quantités de données Géospatial de Laravel: optimisation des cartes interactives et de grandes quantités de données Apr 08, 2025 pm 12:24 PM

Traiter efficacement 7 millions d'enregistrements et créer des cartes interactives avec la technologie géospatiale. Cet article explore comment traiter efficacement plus de 7 millions d'enregistrements en utilisant Laravel et MySQL et les convertir en visualisations de cartes interactives. Exigences initiales du projet de défi: extraire des informations précieuses en utilisant 7 millions d'enregistrements dans la base de données MySQL. Beaucoup de gens considèrent d'abord les langages de programmation, mais ignorent la base de données elle-même: peut-il répondre aux besoins? La migration des données ou l'ajustement structurel est-il requis? MySQL peut-il résister à une charge de données aussi importante? Analyse préliminaire: les filtres et les propriétés clés doivent être identifiés. Après analyse, il a été constaté que seuls quelques attributs étaient liés à la solution. Nous avons vérifié la faisabilité du filtre et établi certaines restrictions pour optimiser la recherche. Recherche de cartes basée sur la ville

See all articles