Bu fonksiyonu str_replace("aranan ifade","yerine koyulacak ifade", "cümle"); şeklinde açıklayabiliriz. BBkod ile canlı örnek yapacak olursak , örneğin yazı kalınlaştırmak için;
str_replace("[b]","< b.>“, $cumle);
gibi bir yapı ile çalışabiliriz.
Tabi ayraçları kapatmak için ayrı bir str_replace fonksiyonuna ihtiyacımız olur. Bu açıdan siz kendi istediğiniz ayraçları kullanabilirsiniz. Tabi fonksiyonda yerine koyacağınız ifade html olmalıdır. Bir örnek ile onuda açıkladıktan sonra aşağıya fonksiyonu yazacağım.
Örnek: biz “” yerine “-KALIN-” ifadesini kullanmak istiyoruz. O zaman şu şekilde bir yapı oluşturmalıyız.
str_replace("-KALIN-", "< b.>“, $cumle); gibi olabilir.
Fonksiyonumuz ideal bir bbkod fonksiyonudur. Peki bunu veritabanından gelen içerikle nasıl ilişkilendirecez şekline bir soru soracak olursanız, basir bir örnek ile şu şekilde cevap verebilirim:
kullanımı:
<?
// bbkod.php fonksiyon kütüphanemizi yükleyelim
require("bbkod.php");
// while ile veritabanından gelen verileri döngüye sokalım
while ( $sira = mysql_fetch_array($kayitlar) )
{
// veri tabanında bir makale içeriği olsun farz edelim ve bunu $sira["makale"] dizi değişkenine eşit olduğunu düşünelim
// bbkod adındaki bbkod fonksiyonumuzu aşağıdaki gibi ilişkilendirebilirsiniz.
echo bbkod($sira["makale"]);
// hepinize kolay gelsin. bol kodlu günlere. parmaklara kuvvet
}
?>
bbkod.php:<?php
//bbkod
function bbkod($message) {
// veri güvenliğini sağlayalım
$message = stripslashes(str_replace("<", "<", str_replace(">", ">", $message)));
// nl2br fonksiyonu ile satır başlarını <br> ye çevirelim
$message = nl2br($message);
$message = str_replace("[url=javascript", "[url=NOHACK", $message);
$message = str_replace("[b]", "<b>", $message);
$message = str_replace("[/b]", "</b>", $message);
$message = str_replace("[i]", "<i>", $message);
$message = str_replace("[/i]", "</i>", $message);
$message = str_replace("[u]", "<u>", $message);
$message = str_replace("[/u]", "</u>", $message);
$message = str_replace("[p]", "<p>", $message);
$message = str_replace("[/p]", "</p>", $message);
$message = str_replace("[center]", "<div align="center">", $message);
$message = str_replace("[/center]", "</div>", $message);
$message = str_replace("[left]", "<div align="left">", $message);
$message = str_replace("[/left]", "</div>", $message);
$message = str_replace("[right]", "<div align="right">", $message);
$message = str_replace("[/right]", "</div>", $message);
$message = str_replace("[list]", "<ol>", $message);
$message = str_replace("[li]", "<li>", $message);
$message = str_replace("[/list]", "</ol>", $message);
$message = str_replace("[br]", "<br>", $message);
$message = eregi_replace("[img]([^\[]*)[/img]", "<img src="\1" border="0">", $message);
$message = eregi_replace("[url=https://([^\[]*)]([^\[]*)[/url]", "<a class="post" href="https://\1">\2</a>", $message);
$message = eregi_replace("[url=ftp://([^\[]*)]([^\[]*)[/url]", "<a class="post" href="ftp://\1">\2</a>", $message);
$message = eregi_replace("[url=ed2k://(.+)](.+)[/url]", "<a class="post" href="ed2k://\1">\2</a>", $message);
$message = eregi_replace("[url=([^\[]*)]([^\[]*)[/url]", "<a class="post" href="https://\1">\2</a>", $message);
$message = eregi_replace("[url]https://([^\[]*)[/url]", "<a class="post" href="\1">\1</a>", $message);
$message = eregi_replace("[url]([^\[]*)[/url]", "<a class="post" href="https://\1">\1</a>", $message);
// smiley ekleyelim, siz istediğiniz kadar ekleyebilirsiniz.
// smiley dizinini resimler/ifadeler şeklinde salladım. siz kendinize göre düzenlersiniz
$message = str_replace(":)", "<img src="resimler/ifadeler/1.gif" border="0">", $message);
$message = str_replace(":-)", "<img src="resimler/ifadeler/2.gif" border="0">", $message);
$message = str_replace(":(", "<img src="resimler/ifadeler/1.gif" border="0">", $message);
$message = str_replace(":-(", "<img src="resimler/ifadeler/3.gif" border="0">", $message);
$message = str_replace(":D", "<img src="resimler/ifadeler/4.gif" border="0">", $message);
return $message;
}
?>



