Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

preg_replace ve BBCode

Merhabalar,
$pattern = "/\[php\](.*)\[\/php\]/is";
$replace = '<pre class="brush: php">$1</pre>';
$kod = preg_replace($pattern, $replace, $kod);

şeklinde preg replace yardımıyla bbcode tarzı birşey oluşturmaya çalıştım. kullanıcı tagi bir defa kullandığı zaman sorun olmuyor fakat, şu tür birşey yazdığı zaman:
[php]
function();
[/php]
[php]
$a = 1;
[/php]

preg_replace pattern'i uyuştuğu için baştaki [php] ile sondaki [/php]'yi değiştiriyor, ortadakiler de öylece kalıyorlar. Bunu nasıl çözebiliriz? sanırım pattern'de ufak bi değişiklik gerekiyor?
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • huseyiniskender adlı üyenin fotoğrafı
    12 yıl önce yazılmış
    47 cevap - 20 soru
    Merhaba, nette araştırma yaparken bir yıldızın kullanımıyla ilgili farklı bir yöntem gördüm uyguladım ve çalıştı, fonksiyonu alttaki gibi değiştirirsen çalışacaktır.

    $pattern = "/\[php\](.*?)\[\/php\]/is";
    $replace = '<pre class="brush: php">$1</pre>';
    $kod = preg_replace($pattern, $replace, $kod);
    
    • sedran adlı üyenin fotoğrafı sedran
      Allah razı olsun :) Çok teşekkür ederim iyi çalışmalar :)
      12 yıl önce yazılmış
    • huseyiniskender adlı üyenin fotoğrafı huseyiniskender
      Sendende Allah razı olsun, bende şu iki kod arasındaki değer nasıl alınır bilmiyordum kapı kapıyı açıyor, çözüldüğüne sevindim iyi çalışmalar :)
      12 yıl önce yazılmış

Cevaplar

Hiç cevap bulunamadı.