SORU
18 EKİM 2010, PAZARTESİ


Üreten PHP (kaçış karakteri)belge XML

Bir PHP komut dosyası bir XML belgesi oluşturma olduğumu ve XML özel karakterler kaçmak istiyorum. Kaçtım olması gereken bir karakter listesi; fakat, bunu yapmak için doğru yolu nedir?

Karakterler sadece ters eğik çizgi ( ' ) ya da ne uygun yoldur\? ile kaçmış olmalı Herhangi bir yerleşik benim için bunu yapabilecek bir PHP işlevi var mı?

CEVAP
18 EKİM 2010, PAZARTESİ


XML five "predefined entities" ile kaçar basit bir fonksiyon hazırladım:

function xml_entities($string) {
    return strtr(
        $string, 
        array(
            "<" => "<",
            ">" => ">",
            '"' => """,
            "'" => "'",
            "&" => "&",
        )
    );
}

Kullanım örneği Demo:

$text = "Test & <b> and encode </b> :)";
echo xml_entities($text);

Çıkış:

Test &amp; <b> and encode </b> :)

Benzer bir etki str_replace kullanılarak elde edilebilir ama çift replacings (denenmemiş, tavsiye edilmez) çünkü: kırılgan

function xml_entities($string) {
    return str_replace(
        array("&",     "<",    ">",    '"',      "'"),
        array("&", "<", ">", """, "'"), 
        $string
    );
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • George McCarron

    George McCar

    29 Mayıs 2013
  • IGN

    IGN

    19 EYLÜL 2006
  • NLthomas21

    NLthomas21

    20 Mayıs 2008