Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ althtmlcssphpjsblog

Что такое Bbcode, для чего, как используют, функция примеры

Поддержи проект!!!

Как использовать bbcode, функция bbcode, пример как работает bbcode – все это рассмотрим сегодня!

Нам нужно было разделить bbcode теги и страницу о том, как работают Bbcod-ы, как вообще это работает! Зачем это нужно! И что такое Bbcode

Дополнительно сделали оглавление по BBCODE

Все о Bbcode, как работает, примеры использования ббкодов

  1. Что такое Bbcode, как расшифровывается, что обозначает
  2. Алгоритм, принцип работы Bbcode
  3. Как происходит замена Bbcode!? -> живой пример
  4. Как работает функция замены Bbcode тегов -> теги Html
  5. Готовая к использованию функция замены bbcode тегов на html теги
  6. Как заменить теги Html на -> Bbcode теги -> живой пример
  7. Bbcode в javascript
  8. Живой пример Bbcode вместе с формой и описанием!
  1. Что такое Bbcode, как расшифровывается, что обозначает

    Bbcode - это язык разметки используемый для форматирования сообщений

    Для форматирования текста используются теги, подобные тегам HTML. В отличие от тегов HTML, теги bbCode заключают в квадратные скобки

    Как расшифровывается bbCode

    Bbcode это Bulletin Board Code, что переводится как Код Доски Объявлений

  2. Алгоритм, принцип работы Bbcode

    Из выше сказанного мы поняли, что bbcode теги - это теги заключенные в квадратные скобки!

    Мы на своем сайте используем bbcode - просто ... потому, что это удобно!

    И вы даже и не заметите. где они применяются!

    Итак... самый простой пример, как это работает...

    У нас есть какой-то тег ббкодов, например:

    Здесь нужно уточнить!, что данные квадратные скобки - вы никогда бы не увидели, для этого нам пришлось заранее заэкранировать квадратные скобки в данном примере:

    [b] Жирный текст [/b] - и вы должны были увидеть вот это : Жирный текст

    Алгоритм работы Bbcode

    Т.е. как вы поняли, то вот такая запись :

    [b] Жирный текст [/b] была заменена на <b> Жирный текст <b>

  3. Как происходит замена Bbcode!?

    Есть несколько способов замены Bbcode на Html теги(не буду рассказывать о всех, расскажу только о том, который выбрал я и почему именно этот...).

    1). Первое и главное условие, что ваш обрабатываемый текст должен быть в переменной!
    Весь вот этот текст, который вы читаете находится в переменной! Обрабатывается множеством функций и в том числе функцией Bbcode

    Это компактный пример функции замены в BBcode(повторяю еще раз - php - это не математика и здесь решения могут быть разными!)

    В первую очередь - нам нужно понять, как это работает...

    2). У нас в переменной, есть какой-то текст
    $example = 'здесь много разного текста и где-то есть, что будем менять ' ;

    Поскольку у нас живой пример, то прямо здесь выведем данную переменную:

    echo $example;

    Результат:

    здесь много разного текста и где-то есть, что будем менять
    Далее...нам потребуется два массива
    3). Массив что меняем:

    $searchexample = array(

    '/текста/'

    );

    4). Массив на что меняем:

    $replaceexample = array(

    'пример замены'

    );

    5). Собственно функция замены, меняем что, на что, где

    return preg_replace ($searchexample , $replaceexample , $example);

    6). И выводим результат, пропущеного текста через функцию BBcode:
    echo BBcodeexample($example);
    7). Соберем весь код примера в один код:

    $example = 'здесь много разного текста и где-то есть, что будем менять ' ;

    function BBcodeexample($example)

    {

    $searchexample = array(

    '/текста/'

    );

    $replaceexample = array(

    'пример замены'

    );

    return preg_replace ($searchexample , $replaceexample , $example);

    }

    echo BBcodeexample($example);

    8). Как мы уже выше говорили о живом примере, то нам остается прямо здесь вывести результат работы функции:
    здесь много разного пример замены и где-то есть, что будем менять

    Принцип замены BBcode - надеюсь понятен!

  4. Как работает функция замены Bbcode тегов на теги Html

    Относительно принципов замены в bbcode, надеюсь разобрались в выше приведенном примере! Единственно там не использовали сами ббкоды, чтобы не усложнять и так сложное...

    Теперь же нам нужно, что мы прошли в пункте принцип замены bbcode пройти уже с самими ббкодами...

    Опять! Приведем не всю функцию а лишь часть... оставим в массиве по 3 строки.
    Внутри функции два массива search - ищем,replace - на, что меняем.
    И функция preg_replace - меняем( "что","на что","где").
    И внутри каждой стрічки первого массива - (.*?) - наверняка вы догадались -что это!? Все что между тегами.
    И во втором массиве - $1 - именно, что было в первом массиве со знаком ?

    function BBcode($example)

    {

    $search = array(

    '/\[h2\](.*?)\[\/h2\]/is',

    '/\[h3\](.*?)\[\/h3\]/is',

    '/\[h4\](.*?)\[\/h4\]/is'

    );

    $replace = array(

    '<h2>$1</h2>',

    '<h3>$1</h3>',

    '<h4>$1</h4>',

    );

    return preg_replace ($search, $replace, $example);

    }

  5. Готовая к использованию функция замены bbcode тегов на html теги

    Далее готовая функция замены bbcode тегов на html теги - вы можете скопировать её и пользоваться! Если вдруг тегов bbcode не хватает, то вот здесь bbcode теги

    Массивы BBcode для функции BBcode

    Ну и далее, у нас есть два массива и функция :

    Массив $search

    $search = array('/\[h1\](.*?)\[\/h1\]/is',

    '/\[h2\](.*?)\[\/h2\]/is',

    '/\[h3\](.*?)\[\/h3\]/is',

    '/\[h4\](.*?)\[\/h4\]/is',

    '/\[h5\](.*?)\[\/h5\]/is',

    '/\[L\](.*?)\[\/L\]/is',

    '/\[b\](.*?)\[\/b\]/is',

    '/\[i\](.*?)\[\/i\]/is',

    '/\[u\](.*?)\[\/u\]/is',

    '/\[QUOTE\](.*?)\[\/QUOTE\]/is',

    '/\[RIGHT\](.*?)\[\/RIGHT\]/is',

    '/\[LEFT\](.*?)\[\/LEFT\]/is',

    '/\[CENTER\](.*?)\[\/CENTER\]/is',

    '/\[font=Serif\](.*?)\[\/font\]/is',

    '/\[font=Sans_serif\](.*?)\[\/font\]/is',

    '/\[font=Monospace\](.*?)\[\/font\]/is',

    '/\[font=Cursive\](.*?)\[\/font\]/is',

    '/\[font=Fantasy\](.*?)\[\/font\]/is',

    '/\[font=Times_New_Roman\](.*?)\[\/font\]/is',

    '/\[font=Georgia\](.*?)\[\/font\]/is',

    '/\[font_size=xx_small\](.*?)\[\/font_size\]/is',

    '/\[font_size=smaller\](.*?)\[\/font_size\]/is',

    '/\[font_size=x_large\](.*?)\[\/font_size\]/is',

    '/\[font_size=xx_large\](.*?)\[\/font_size\]/is',

    '/\[ol\]/is',

    '/\[\/ol\]/is',

    '/\[ul\]/is',

    '/\[\/ul\]/is',

    '/\[li\](.*?)\[\/li\]/is',

    '/\[s\](.*?)\[\/s\]/is',

    '/\[sup\](.*?)\[\/sup\]/is',

    '/\[sub\](.*?)\[\/sub\]/is',

    '/\[img\](.*?)\[\/img\]/is',

    '/\[url\](.*?)\[\/url\]/is',

    '/\[url\=(.*?)\](.*?)\[\/url\]/is',

    '/\[COLOR\="(.*?)"\](.*?)\[\/COLOR\]/is',

    '/\[YOUTUBE\]https:\/\/youtu.be\/(.*?)\[\/YOUTUBE\]/is'

    );

    Массив $replace

    $replace = array('<h1>$1</h1>',

    '<h2>$1</h2>',

    '<h3>$1</h3>',

    '<h4>$1</h4>',

    '<h5>$1</h5>',

    '<L>$1</L>',

    '<strong>$1</strong>',

    '<em>$1</em>',

    '<u>$1</u>',

    '<blockquote>$1</blockquote>',

    '<right style="display: block;text-align: right;">$1</right>',

    '<left style="display: block;text-align: left;">$1</left>',

    '<center>$1</center>',

    '<span style="font-family:serif;">$1</span>',

    '<span style="font-family:sans-serif;">$1</span>',

    '<span style="font-family:monospace;">$1</span>',

    '<span style="font-family:cursive;">$1</span>',

    '<span style="font-family:fantasy;">$1</span>',

    '<span style="font-family:Times New Roman, Times, serif;" >$1</span>',

    '<span style="font-family:Georgia, serif;">$1</span>',

    '<span style="font-size:xx-small;">$1</span>',

    '<span style="font-size:smaller;">$1</span>',

    '<span style="font-size:x-large;">$1</span>',

    '<span style="font-size:xx-large;">$1</span>',

    '<ol>',

    '</ol>',

    '<ul>',

    '</ul>',

    '<li>$1</li>',

    '<s>$1</s>',

    '<sup>$1</sup>',

    '<sub>$1</sub>',

    '<img src="$1" class="in_text">',

    '<a href="$1">$1</a>',

    '<a href="$1">$2</a>',

    '<span style="color:$1">$2</span>',

    '<iframe style ="width:100%;height:40%;" src="https://www.youtube.com/embed/$1" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;" allowfullscreen></iframe>'

    );


    Функция BBcode php

    function BBcode($into) {

    global $search; global $replace;

    return preg_replace ($search, $replace, $into);

    }

    Если не нравится строчка global $search; global $replace; , копируем два массива и заменяем эту строчку на эти два массива

  6. Как заменить теги Html на -> Bbcode теги

    Что нам нужно далее... к примеру мы хотим наш html код с текстом вернуть в видео текста , но уже с тегами BBCODE вместо html тегов...

    Все происходит до банальности аналогично, что было рассказано выше, только в обратную сторону! Не вижу никакого смысла повторяться!

    Поскольку мы еще не написали эти функции для себя, то придется написать короткий пример, как происходит возвращение BBCODE тегов...

    1). Нам нужен тестовый текст в переменной с какими то html тегами:
    $example2 = 'Это другой текст <b>текст внутри тега</b> и где-то есть, что будем менять ' ;
    И опять поскольку у нас есть живой пример возврата BBCODE тегов, выведем через echo прямо здесь переменную $example2
    Это другой текст текст внутри тега и где-то есть, что будем менять
    2). Далее пример функции backBBcode - в данном случае, мы не использовали массив, а применяли функцию preg_replace к строке...

    function backBBcode($html) {

    $html = preg_replace ('/\<b(.*?)>(.*?)<\/b>/is', "[b$1]$2[/b]", $html);

    return $html;

    }

    2). Вывод результат возврата BBCODE тегов:
    echo backBBcode($example2);

    Соберем весь код вместе...

    $example2 = 'Это другой текст <b>текст внутри тега</b> и где-то есть, что будем менять ' ;

    function backBBcode($html) {

    $html = preg_replace ('/\<b(.*?)>(.*?)<\/b>/is', "[b$1]$2[/b]", $html);

    return $html;

    }

    echo backBBcode($example2);

    Ну и собственно результат превращения html тегов в BBCODE теги:

    Это другой текст [b]текст внутри тега[/b] и где-то есть, что будем менять


Вас может еще заинтересовать список тем : #PHP | #BBCODE |
Последняя дата редактирования : 2020-02-17 03:02
//dwweb.ru/comments_1_5/include/img/hand_no_foto.png
no
no
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =
Теги:
Bbcode использование функция примерфункция bbcodeиспользование bbcode

Последние комментарии :
Test :
23/10/2020 01:51
Тест на ссылки :<a href=https://dwweb.ru/comments_1_5/test_page_comments_1_5.html#0685404001603450101 target=_blank>текст_ссылки</a><img…
подробнее.
Марат :
23/10/2020 01:15
Посмотрел... количество возможных знаков 3... почему у вас не получилось увидеть 2...…
подробнее.
Марат :
23/10/2020 01:05
Да! Тоже исправим...А с ссылкой... вроде бы исправлял... совсем недавно...сейчас проверю в чем там…
подробнее.
Марат :
23/10/2020 01:03
Спасибо за внимательность!1). Исправлено!2). Да... будет добавлено, просто не подумал об…
подробнее.
Станислав :
23/10/2020 08:04
В Ранее отправленном комментарии о скрипте № 85.1 пункт 2 уже выяснен:Скорее всего комментарий не будет…
подробнее.