Php İle Özel Html Karakterlerini Temizleme

Kategori : PHP Yazar : alexander Tarih : 23 May 2011, Pt 16:03 Yorum yok

Sitenizde herhangi bir programla diliyle ilgili kodları göstermek istediğimizde kodumuzun içerisinde bulunan özel html karakterlerini temizlemeliyiz (Buradan özel html karakterlerinin listesine bakabilirsiniz.).

Biraz araştırdıktan sonra aşağıdaki kodu buldum.

function pre_code_esc_html($content='')
{
    if(!$content) 
        return $content;
    
    $esc_pre = preg_replace_callback(
                    '#(<pre.*?>)(.*?)(</pre>)#imsu',
                    create_function(
                            '$i',
                            'return $i[1].esc_html($i[2]).$i[3];'
                    ),
                    $content
    );

    return preg_replace_callback(
            '#(<code.*?>)(.*?)(</code>)#imsu',
            create_function(
                    '$i',
                    'return $i[1].esc_html($i[2]).$i[3];'
            ),
            $esc_pre
    );
}

function esc_html($html, $char_set = 'UTF-8')
{
    if(empty($html))
    {
        return '';
    }

    $html = (string) $html;
    $html = htmlspecialchars($html, ENT_QUOTES, $char_set);

    return $html;
}

//Örnek kullanım
$temizlenmis_metin = pre_code_esc_html("temizlenecek metin");

Kendi sitemde de bu kodu kullanmaktayım herhangi bir sorunla karşılaşmadım sizde rahatlıkla kullanabilirsiniz .

Yorumlar >> (Yorum yok)

Henüz yorum yapılmamış.

Yorum Yap

Yeni yorum yapıldığında bana bildir.

Yorum Yazarken

Basit Html etiketlerini kullanabilirsiniz.

Kodlarınızı <pre></pre> etiketleri arasına yazınız.