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

  • FF Radio

    FF Radio

    16 Mayıs 2008
  • modica89

    modica89

    24 HAZİRAN 2007
  • The Onion

    The Onion

    14 Mart 2006