В моем проекте на базе Laravel 5 я использую пакет Markdown от http://packalyst.com/packages/package/graham-campbell/markdown.
Как использовать Markdown для поля ввода textarea в форме Laravel 5?
Один хороший пример найден для Yii2, но нужно знать, как этого добиться в Laravel 5.
Уценка демо для Yii2: http://demos.krajee.com/markdown-demo
Если вы хотите сохранить вывод HTML в базе данных (вы не должны IMO), вы можете сделать это следующим образом:
<?php
namespace App\Http\Controllers;
use App\SomeModel;
use Illuminate\Http\Request;
use GrahamCampbell\Markdown\Facades\Markdown;
class SomeController extends Controller
{
/**
* Handle form submission of my markdown form.
*
* @return redirect
*/
public function create(Request $request)
{
$markdownInput = $request->get('markdown_input');
$model = new SomeModel();
$model->html = Markdown::convertToHtml($markdownInput);
if ($model->save()) {
return redirect('/success');
}
else {
die("Handle failed submission.");
}
}
}
Но, как я уже сказал, вы не должны, потому что это займет много памяти ЕСЛИ у вас есть много записей в вашей базе данных. Если нет, это не повредит.
Вместо этого сохраните исходные данные уценки в вашей базе данных без преобразования их в HTML и преобразуйте входные данные в HTML в ваших представлениях:
В config/app.php
добавьте псевдоним к фасаду Markdown:
'Markdown' => 'GrahamCampbell\Markdown\Facades\Markdown'
Тогда в ваших взглядах вы можете сделать:
{{ Markdown::convertToHtml($rawMarkdownInputFromTheDatabase) }}
Других решений пока нет …