HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

BBcode class
  #1  
Старый 27.03.2008, 21:50
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
С нами: 10262314

Репутация: 668


По умолчанию BBcode class

эм решил написать класс ббкодов...
вот что вышло ...

PHP код:
<?php

/**
 * @author @FATAL@
 * @copyright 2008
 */

class BBcode
{
    private 
$BBarr = array(
        
'#\[B\](.*?)\[/B\]#ixs' => '<b>$1</b>'
        
'#\[IMG\](.*? \.jpg|.*? \.gif)\[/IMG\]#ixs' => '<img src="$1">'
        
'#\[S\](.*?)\[/S\]#ixs' => '<s>$1</s>'
        
'#\[LINK=(www\..*?|http://.*?)\](.*?)\[/LINK\]#xis' => '<a href="$1" target="_blank">$2</a>'
        
'#\[LEFT\](.*?)\[/LEFT\]#xis' => '<div align="left">$1</div>'
        
'#\[CENTER\](.*?)\[/CENTER\]#xis' => '<div align="center">$1</div>'
        
'#\[RIGHT\](.*?)\[/RIGHT\]#xis' => '<div align="right">$1</div>'
        
'#\[I\](.*?)\[/I\]#xis' => '<em>$1</em>'
        
);

    public function 
bbcod($BBcode)
    {
        
$BBcode htmlspecialchars($BBcode);
        foreach (
$this->BBarr as $BB => $BBHTM)
        {
            if (
$BB === '#\[LINK=(www\..*?|http://.*?)\](.*?)\[/LINK\]#xis')
            {
                if (
preg_match('#\[LINK=(www\..*?|http://.*?)\](.*?)\[/LINK\]#xis'$BBcode$pock))
                {
                    if (
$pock['2'] === '')
                    {
                        
$BBcode preg_replace($BB'<a href="$1" target="_blank">$1</a>'$BBcode);
                    }

                }


            }
            
$blank '';
            while (
$BBcode !== $blank)
            {
                
$blank $BBcode;
                
$BBcode preg_replace($BB$BBHTM$BBcode);
            }

        }
        echo 
$BBcode;
    }

}
?>
жду критики....

для проверки работы

PHP код:
$str "[i][b]Test[/b][/i]";
$bb = new BBcode;
$bb->bbcod($str); 

Последний раз редактировалось Doom123; 27.03.2008 в 21:54..
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Введение в .Net Cracking 0x0c0de Реверсинг 8 22.02.2008 16:12
[C++] Class: Tokenize razzzar С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 10 18.02.2008 12:54
mrim class Sharky PHP 4 11.12.2007 23:00
BBcode player phpBB néM3S!s Forum for discussion of ANTICHAT 6 08.12.2005 19:38
phpBB < 2.0.15, BBCODE URL в phpBB karapuz Уязвимости CMS / форумов 21 17.06.2005 06:11



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.