zoukankan      html  css  js  c++  java
  • laravel把markdown文本解析为html元素

    工具

    使用erusev/parsedown扩展包,安装方法

    composer require erusev/parsedown
    

    配置

    由于,该扩展包并没有针对laravel进行封装。所以,包安装之后,还不能直接使用,需要进行如下的配置才行。

    • composerautoloadclassmap中新增parsedown的地址,由于扩展包都是安装在vendor的目录下的,所以新增的地址为:vendor/erusev/parsedown
      如下配置:
    "autoload": {
        "psr-4": {
            "App\": "app/"
        },
        "classmap": [
            "database/seeds",
            "database/factories",
            "vendor/erusev/parsedown"
        ],
        "files":[
            "app/helpers.php"
        ]
    },
    
    • 执行下面的命令,自动加载该扩展
    composer dump-auto
    

    引用变量

    又有当前的扩展包仅仅是一个单独的类,内部没有使用命名空间,所以使用的时候,只要保证在全局变量里使用就行了。

    1. 通过use使用
    use Parsedown;
    
    1. 或者直接指定全局空间
    $parse = new Parsedown;
    

    使用方法

    使用类的text方法解析

    $html = (new Parsedown)->text($content);
    

    如果是解析用户输入的markdown文本,建议加上setSafeMode(true)用于Parsedown能够转义其生成的HTML中的用户输入,告诉Parsedown它正在处理不受信任的用户输入

    $html = (new Parsedown)->setSafeMode(true)->text($content);
    

    更多用法应参考文档

  • 相关阅读:
    InnoDB和MyISAM区别总结
    jquery判断checkbox是否被选中
    手机网站重构经验分享(S60V3篇)
    域名A记录、MX记录、CNAME、TTL
    ubuntu apache2配置详解(含虚拟主机配置方法)
    IP分片攻击
    Linux+Apache+Mysql+PHP典型配置
    apache配置优化测试
    PHP 正则表达式资料
    人人网UGC技术广播站
  • 原文地址:https://www.cnblogs.com/hxsen/p/12716273.html
Copyright © 2011-2022 走看看