Конвертор BB-тегов
Оглавление
1.
Введение
2.
Список методов
3.
Спецификация предустановленных bb-тегов
4.
Примеры использования
Введение #
К оглавлению
Для работы с псевдоразметкой пользовательских сообщений, в фреймворке предусмотрен сервис BB. Вызывается, как и все остальные:
1
2
3
$bb = Abc::newService(ABC::BB_DECODER);
Имеет некоторые настройки, которые доступны в любом конфигурационном файле:
1
2
3
4
5
6
7
'bb_code' => [
'max_len' => 74, // Максимальная длина слова
'links' => false, // Запретить тег [URL]
'images' => false, // Запретить тег [IMG]
],
Сервис предоставляет следующие публичные методы #
К оглавлению
К списку методов
Конвертирует псевдоразметку в HTML
Этот метод преобразует псевдоразметку bb-тегами в HTML разметку. Список предустановленных bb-кодов можно посмотреть в
спецификации.
Кроме того, заменяет спецсимволы переноса строки на теги <br />, и обрабатывает исходный текст функцией htmlspecialchars().
public BbDecoder::convert ( $text ) |
$text |
string |
Обрабатываемый текст. |
return |
string |
Обработанный текст |
К списку методов
Удаляет из текста bb-псевдоразметку.
Очищает текст от предустановленных bb-тегов.
Спецификация предустановленных bb-тегов #
К оглавлению
Общие
1 |
[b]жирный[/b] |
жирный |
2 |
[i]наклонный[/i] |
наклонный |
3 |
[s]зачеркнутый[/s] |
зачеркнутый |
4 |
[u]подчеркнутый[/u] |
подчеркнутый |
5 |
верхний [sup]индекс[/sup] |
верхний индекс |
6 |
нижний [sub]индекс[/sub] |
нижний индекс |
7 |
[justify]выравнивание по ширине[/justify] |
выравнивание по ширине |
8 |
[left]по левому краю[/left] |
по левому краю |
9 |
[right]по правому краю[/right] |
по правому краю |
10 |
[center]по центру[/center] |
по центру |
16 |
[h=5]заголовок h5[/h=5] |
заголовок h5 |
17 |
[h=4]заголовок h4[/h=4] |
заголовок h4 |
18 |
[h=3]заголовок h3[/h=3] |
заголовок h3 |
19 |
[h=2]заголовок h2[/h=2] |
заголовок h2 |
20 |
[h=1]заголовок h1[/h=1] |
заголовок h1 |
Шрифт:
1 |
[size=1]размер шрифта 11px[/size=1] |
размер шрифта 11px |
2 |
[size=2]размер шрифта 14px[/size=2] |
размер шрифта 14px |
3 |
[size=3]размер шрифта 18px[/size=3] |
размер шрифта 18px |
4 |
[size=4]размер шрифта 24px[/size=4] |
размер шрифта 24px |
5 |
[size=5]размер шрифта 32px[/size=5] |
размер шрифта 32px |
6 |
[color=gray]серый[/color=gray] |
серый |
7 |
[color=green]зеленый/color=green] |
зеленый |
8 |
[color=purple]пурпурный[/color=purple] |
пурпурный |
9 |
[color=olive]оливковый[/color=olive] |
оливковый |
10 |
[color=silver]серебряный[/color=silver] |
серебряный |
11 |
[color=aqua]бирюзовый[/color=aqua] |
бирюзовый |
12 |
[color=yellow]желтый[/color=yellow] |
желтый |
13 |
[color=blue]синий[/color=blue] |
синий |
14 |
[color=orange]оранжевый[/color=orange] |
оранжевый |
15 |
[color=red]красный[/color=red] |
красный |
Списки
1 |
[list=ol]список OL[/list=ol] |
- список OL
|
2 |
[list=ul]список UL[/list=ul] |
|
3 |
[*]пункт списка LI[/*] |
|
Внешние данные:
1 |
[url]http://abc-framework.ru[/url] |
http://abc-framework.ru |
2 |
[url=http://abc-framework.ru/]ABC-framework[/url] |
ABC-framework |
3 |
[img]http://abc-framework.ru/logo.gif[/img] |
|
4 |
[img=left|right|center]http://abc-framework.ru/logo.gif[/img] |
|
Смайлики:
1 |
[:)] |
|
2 |
[:(] |
|
3 |
[;)] |
|
4 |
[%)] |
|
Дополнительно:
11 |
[quote]цитируемый текст[/quote] |
Цитата: цитируемый текст |
Класс CSS - "bb_quote" |
Пример использования #
К оглавлению
1
2
3
4
5
6
7
8
9
10
11
12
$bb = ABC::newService(ABC::BB_DECODER);
$text = POST('text');
$check = $bb->stripBBtags($text);
if (!empty($check)) {
echo $bb->convert($text);
} else {
echo 'Нет текста';
}