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

  • AmeriiK_HD

    AmeriiK_HD

    16 AĞUSTOS 2012
  • Random Act of Kindness Video Contest

    Random Act o

    18 EYLÜL 2012
  • Philip DeFranco

    Philip DeFra

    16 EYLÜL 2006