php

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]',
 ''
 );
 $replace = array(
 '<strong>1</strong>',
 '<em>1</em>',
 '<span style="text-decoration: underline;">1</span>',
 '<img src="1" alt="">',
 '<a href="1">2</a>',
 '<code>1</code>'
 );
 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

Post Author: Oral ÜNAL

Web geliştirmeyi başta meslek olarak hayal eden fakat daha sonra bir hobi haline getiren birisiyim işte.

BBCode Kodunu HTML’e Çevirme” için 3 yorum

  • Pyrotoxin

    (05 Mart 2012 - 03:27)

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

    hatasını alıyorum :/

  • Phpci_Cocuk

    (05 Mart 2012 - 03:31)

    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ış:

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

    comment.js adlı dosyada:

    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(

    devamı kayıptır..

Yorum yazma sırası sizde!