Kaçtı karakterleri dönmek

3 Cevap php

Ben kullanarak veritabanında bazı verileri kaydedilmiş mysql_real_escape_string() bu yüzden tek tırnak böyle kaçtı '. Bu tarayıcıda Tamam görünüyor, ama ben bir txt dosyasına kaydetmek metin ben bunu tek bir teklifle nasıl geri çevirebilirim?

3 Cevap

Lütfen dikkat mysql_real_escape_string() yapar not turn apostrophes ' içine {[(4 çağrıları olmalıdır böylece ' Sadece HTML odaklı fonksiyonlar, do Lütfen komut)]} yerde.

Sorunuza gelince, aradığınız fonksiyonu html_entity_decode() olduğunu

echo html_entity_decode(''', ENT_QUOTES);

Bu veritabanında kodlanmış metin depolamak gerektiğini nedeni de budur. Bunu orijinal formatında saklanır, ve bunu göstermek ne zaman kodlanmış olmalıdır.

Şimdi işlevi kodlamak ne karakterleri kontrol etmek, ve tersten, onları geri dönüştürür dize değiştirmeler.

Pseudo-kod örneği:

s = Replace(s, "'", "'")
s = Replace(s, "&lt;", "<")
s = Replace(s, "&gt;", ">")
s = Replace(s, "&amp;", "&")

Yani "'", geri bir karakter onu almak için chr kullanabileceğiniz sadece bir ascii değerdir. İşte kod

$string = "Hello &#39; Man";
$string = preg_replace('|&#(\d{1,3});|e', 'chr(\1)', $string);
echo $string; # Hello ' Man