BBCode (аббр. от англ. bulletin board code) — язык разметки, используемый для форматирования сообщений на многих электронных досках объявлений (BBS) и форумах. Для форматирования текста используются теги, подобные тегам HTML, но, в отличие от них, заключённые в квадратные скобки («[» и «]»). Перед отображением страницы движок сайта производит разбор текста и преобразование его в HTML-код.

Рассмотрим интеграцию BBCode на ваш сайт! В основу я взял php-фреймворк Laravel и библиотеку BBCodeParser от компании Golonka.

Установить вы можете двумя способами:
  • 1) Скачать саму библиотеку в архиве с GitHub по данной ссылке, и затем в папке vendor создать папки golonka > bbcodeparcer.
  • С папки BDCodeParser-master (которая в архиве) извлечь данные в ранне созданный каталог bbcodeparcer.
  • 2) И второй способ, установка через composer
$ composer require golonka/bbcodeparser
Но это не все, для Laravel необходимо еще дополнительно зарегистрировать сервис-провайдер и фасад.
В массив providers добавляем строку Golonka\BBCode\BBCodeParserServiceProvider::class

'providers' => [
    ...
    Golonka\BBCode\BBCodeParserServiceProvider::class,
    ...
];
А в массив aliases добавляем 'BBCode' => Golonka\BBCode\Facades\BBCodeParser::class

'aliases' => [
    ...
    'BBCode' => Golonka\BBCode\Facades\BBCodeParser::class,
    ...
];
Использование:

// Простой парсинг текста
echo BBCode::parse('[b]Bold Text![/b]'); // <b>Bold Text!</b>

// Ограничение парсеров единственным методом
echo BBCode::only('bold', 'italic')->parse('[b][u]Bold[/u] [i]Italic[/i]![/b]');
    // <strong>[u]Bold[/u] <em>Italic</em>!</strong>

// Или исключением метода
echo BBCode::except('bold')->parse('[b]Bold[/b] [i]Italic[/i]');
    // [b]Bold[/b] <em>Italic</em>
Доступные коды:
[b]Жырный[/b]                      || Жырный
[i]Наклонный[/i]                   || Наклонный
[u]Подчеркнутый[/u]                || Подчеркнутый
[s]Зачеркнутый[/s]                 || Зачеркнутый
[size=9]Размер[/size]              || Size
[color=#f00]Красный[/color]        || Красный
[center]Текст[/center]             || Текст по центру
[left]Текст[/left]                 || Текст по левому краю
[right]Текст[/right]               || Текст по правому краю
[quote]Цитата[/quote]              || Цитата
[quote=Имя]Цитата[/quote]          || Именированная Цитата
[img]your_photo.png[/img]          || Изображение
[code] echo 'Hello World'; [/code] || Кусок кода
[youtube]kJQP7kiw5Fk[/youtube]     || Вставка видео с ютуба
H[sub]2[/sub]O                     || H2O
10[sup]2[/sup] = 100               || 102 = 100
Это [small]маленький[/small] текст || Это маленький текст

[url]http://technoblog.info[/url]                      || http://technoblog.info
[url=http://technoblog.info]Именированная ссылка[/url] || Именированная ссылка

[list=1]
    [*]Элемент
    [*]Элемент
[/list]
                || Нумерованний список 
  1. Элемент
  2. Элемент
[list] [*]Элемент [*]Элемент [/list] || Маркированный список
  • Элемент
  • Элемент
Комментарии
Поля позначенные * обязательны для заполнения!
ВВ-коды Смайлы

tes

test

test

qwerty

taras

test

ccty

bbjbjib

тест

test <b>fhfh</b>