Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Parser BBCode, Klasa, PHP 5
Louner
post 31.01.2008, 13:19:32
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 5
Dołączył: 20.06.2005
Skąd: Bielsk Podlaski

Ostrzeżenie: (0%)
-----


Demo:
http://pliki.puklerz.pl/parser/

Źródło:
http://pliki.puklerz.pl/parser/parser.class.phps

Download:
http://pliki.puklerz.pl/parser/parser.zip

Szybka, prosta i zgrabna klasa parseru. Jestem praktycznie pewien, że nie pogubi się w tagach i wszystkie odpowiednio zinterpretuje. winksmiley.jpg Dodatkowo, sprawdza ich kolejność i jest banalna w obsłudze i modyfikacji.

Konfiguracja klasy:


Mam nadzieję, że jest na tyle intuicyjna, że nie trzeba nic tłumaczyć. smile.gif

  1. <?php
  2. private $config = array
  3.        (
  4.            'open_string' => array('[',']'),
  5.            'close_string' => array('[/',']')
  6.        );
  7.    
  8.    private $tags = array
  9.        (
  10.            'b' => '<strong>{value}</strong>',
  11.            'i' => '<span style="font-style:italic;">{value}</span>',
  12.            'u' => '<span style="text-decoration:underline;">{value}</span>',
  13.            'img' => '<img src="{value}" alt="obrazek" title="{parameter}" />',
  14.            'url' => '<a href="{value}">{parameter}</a>',
  15.            'size' => '<span style="font-size:{parameter}px">{value}</span>',
  16.            'ul' => '<ul>{value}</ul>',
  17.            'ol' => '<ol>{value}</ol>',
  18.            'li' => '<li>{value}</li>'
  19.        );
  20. ?>


Schemat tagu przy powyższej konfiguracji:

Kod
[tag=parametr]wartość[/tag]


Sposób użycia:
  1. <?php
  2. if( $wynik = $parser -> parse($jakis_tekst) )
  3. {
  4.   echo $wynik;
  5. } else
  6. // false
  7. {
  8.   echo 'tagi są w błednej kolejności!';
  9. }
  10. ?>


[edit.31.01.2008]
Dodałem tagi list, przykład:

Kod
[ul]
[li]test[/li]
[li]test2[/li]
[/ul]


[edit.22.03.2008]
Parę poprawek, m.in nie ma potrzeby stosowanie cudzysłowu przy ustalaniu parametrów.

Życzę miłego użytkowania. winksmiley.jpg

Ten post edytował Louner 15.02.2009, 20:11:20
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:35