Utilisation de fonctions d'assistance pour convertir Markdown en HTML dans Laravel 11

WBOY
Libérer: 2024-07-18 11:28:11
original
401 Les gens l'ont consulté

Using Helper Functions to Convert Markdown to HTML in Laravel 11

Dans ce tutoriel, nous allons créer une fonction d'assistance dans une application Laravel pour convertir le contenu Markdown en HTML à l'aide de la bibliothèque league/commonmark. Nous aborderons les étapes pour créer un fichier d'aide, l'inclure dans notre projet Laravel et l'utiliser dans un modèle Blade. Ce mécanisme est utilisé dans Laravel 11 pour rendre les fonctions disponibles globalement.

Facultatif : gestion de la conversion Markdown dans le contrôleur

L'alternative est de gérer la conversion Markdown dans le contrôleur avant de transmettre les données à la vue, nous n'avons donc plus besoin de créer un fichier d'assistance :

use League\CommonMark\CommonMarkConverter;

public function show($id)
{
    $course = Course::find($id);
    $converter = new CommonMarkConverter();

    $post->description = $converter->convertToHtml($post->description);

    return view('post.show', compact('post'));
}
Copier après la connexion

Création d'un fichier d'assistance pour rendre la fonction de conversion disponible dans le modèle de lame

Étape 1 : Installer la ligue/commonmark

Tout d'abord, nous installons la bibliothèque league/commonmark via Composer :

composer require league/commonmark
Copier après la connexion

Étape 2 : Créez le fichier helpers.php

Ensuite, nous allons créer un fichier helpers.php pour définir notre fonction d'assistance. Ce fichier peut être placé dans le répertoire de l'application ou à tout autre emplacement préféré.

touch app/helpers.php
Copier après la connexion

Ouvrez app/helpers.php et ajoutez le contenu suivant :

<?php

use League\CommonMark\CommonMarkConverter;

if (! function_exists('markdownToHtml')) {
    function markdownToHtml($markdown) {
        $converter = new CommonMarkConverter();
        return $converter->convertToHtml($markdown);
    }
}
Copier après la connexion

Étape 3 : Inclusion du fichier d'assistance dans Composer

Pour garantir que Laravel charge automatiquement le fichier helpers.php, nous devons modifier le fichier composer.json pour ajouter le chemin vers helpers.php sous la section autoload :

"autoload": {
    "files": [
        "app/helpers.php"
    ]
}
Copier après la connexion

Étape 4 : Régénérer les fichiers de chargement automatique du Composer

Après avoir modifié composer.json, régénérez les fichiers de chargement automatique de Composer en exécutant :

composer dump-autoload
Copier après la connexion

Étape 5 : Utiliser la fonction d'assistance dans les modèles de lame

Une fois la fonction d'assistance définie et chargée, nous pouvons désormais l'utiliser dans les modèles Blade pour convertir Markdown en HTML :

<div>
    {!! markdownToHtml($post->description) !!}
</div>
Copier après la connexion

Ce didacticiel est fourni pour montrer comment nous pouvons rendre des fonctions personnalisées disponibles dans les modèles de lame.

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!

source:dev.to
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!