php markdown html,HTML 与 Markdown 互相转换

本文介绍了一种在PHP环境中实现Markdown与HTML互相转换的方法。利用Parsedown库将Markdown转换为HTML,并通过LeagueHTMLToMarkdown库实现了从HTML到Markdown的转换。文章详细展示了转换过程中的代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引入以下工具进行 markdown 与 html 之间的转换.

App\Http\Controllers\Traits\Markdown.php;

/**

* Created by PhpStorm.

* User: GucciLee

* Date: 2019/3/4

* Time: 14:41

*/

namespace App\Http\Controllers\Traits;

use League\HTMLToMarkdown\HtmlConverter;

trait Markdown

{

/**

* markdown -> html

* @param $markdown

* @return mixed

*/

public function markdownToHtml($markdown)

{

// markdown to html

$convertedHmtl = app('Parsedown')->setBreaksEnabled(true)->text($markdown);

/** XSS 防注入 */

$convertedHmtl = clean($convertedHmtl, 'markdown');

// 代码高亮展示优化

$convertedHmtl = str_replace("

", '
', $convertedHmtl);

// 移除 {{}}

// $convertedHmtl = remove_vue($convertedHmtl);

// 返回 html

return $convertedHmtl;

}

/**

* html -> markdown;

* @param $html

* @return string

*/

public function htmlToMarkdown($html)

{

$converter = new HtmlConverter(['header_style' => 'atx']);

$converter->getConfig()->setOption('list_item_style', '*');

return $converter->convert($html);

}

}

App\Http\Controllers\ArticlesController.php

namespace App\Http\Controllers;

use App\Http\Controllers\Traits\Markdown;

.

.

.

class ArticlesController extends Controller{

use Markdown;

.

.

.

public function show(Article $article)

{

// 转换markdown

$article->body = $this->markdownToHtml($article->body);

return view('pages.articles.show', compact('article'));

}

.

.

.

}

本作品采用《CC 协议》,转载必须注明作者和本文链接

老哥以后是要做 CTO 的人,这些技术怎么能不会呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值