ASP.NET C# C/C++ Genel HTML/CSS Java JS/Ajax PHP XML Forum

BBCode Kodunu HTML'e Çevirme

BBCode Kodunu HTML\'e Çevirme

Merhaba arkadaşlar

Bu fonksiyon ile [b]..[/b] arasına yazılanları kalın, [i]...[/i] arasına yazılanları italik vs. olarak ekrana nasıl yazdırağımızı anlatıyorum. Bunun için basit bir fonksiyon yazmamız yeterli olacaktır.

Öncelikle fonksiyon.php dosyamızı oluşturalım ve için BBCode isimli bir fonksyion oluşturalım.

Düzenli ifadeleri kullanarak bir arama ve yerine yerleştirme işlemi ile rahatlıkla bu fonksiyomnumuzu yazabiliriz.

<?php
function BBCode ($string) {
    $search = array(
        '[b](.*?)[/b]',
        '[i](.*?)[/i]',
        '[u](.*?)[/u]',
        '[img](.*?)[/img]',
        '[url=(.*?)](.*?)[/url]',
        '[code](.*?)[/code]'
    );
    $replace = array(
        '1',
        '1',        
        '1',        
        '',      
        '2',        
        '1'
    );    
    return preg_replace($search, $replace, $string);
}
?>

İşte bu kadar artık bu fonksiyonumuz kullanılmaya hazır. Kullanımı da aşağıdaki şekilde olacaktır.

<?php
echo BBCode('Bu yazının tam olara [b]bu kısmı(!)[/b] kalın yazılacaktır!');
?>

Yukarıdaki PHP komutunun ekran çıktısı: "Bu yazının tam olara bu kısmı(!) kalın yazılacaktır!" şeklinde olacaktır.

Kolay gelsin


Oral ÜNAL


Bu makaleyi beğendin mi? Bir sonraki makaleden ilk senin haberin olsun ;)




2 yorum

Yorum Yapın »
  1. Merhaba arkadaşlar.Yazdığım sistemde yazıya yapılan yorumlar var.Ben burada bir yorumu alıntı yapmak istiyorum.

    İstediğim Alıntı Örneği : http://www.dhtmlgoodies.com/index.html?whichScript=dhtmlgoodies_tabmenu bu sayfada mevcut (sayfanın altındaki yorumlara bakarsanız yorumun alt sağ köşesindeki resmine tıklanınca olanları görebilirsiniz)

    Aslında mantığını tam olarak kavrayamadım. Yukarıda verdiğim sitenin kaynak kodlarını karıştırdım. Örneğin bir yorumu alıntı yapmak için şu kodlar kullanılmış:

    [CODE][/CODE]

    quote_comment(); fonksiyonu ve yoruma ait diğer fonksiyonlar ise

    comment.js adlı dosyada:

    [CODE]var comm_ajax_timer_id = 0;

    function hide_all()
    {
    $comm("#comments").hide();
    }


    function click_checkbox(check_id)
    {
    check_handle = document.getElementById(check_id);
    check_handle.checked = !check_handle.checked;
    }


    function update_preview()
    {
    var name = nl2br(strip_tags($comm("#comment-form-name").val()));
    var email = nl2br(strip_tags($comm("#comment-form-email").val()));
    var website = nl2br(strip_tags($comm("#comment-form-website").val()));
    var cmt = $comm("#comment-form-comment").val();
    cmt = cmt.replace(/


  2. merhaba çalıştırdığımda Warning: preg_replace() [function.preg-replace]: Unknown modifier '(' in fonksiyon.php on line 19

    hatasını alıyorum :/


Söyleyecek bir şeyiniz var mı?

HTML etiketlerini kullanamazsınız. HTML etiketleri temizlenecektir.










RSSTwitter

En son yazılanlardan ilk senin haberin olsun


Valid HTML 5 Valid CSS!

Güncel Programlama Makaleleri by TR Kodlama © 2009 is licensed under a Creative Commons Alıntı-TicariOlmayan 3.0 Unported License.