Ben harici bir kaynaktan gelen PHP içine bir XML belgeyi yüklemek için gerek duyuyorum. XML, kodlama var ve &
gibi yasadışı karakterler içeriyor bildirmiyor. xmlParseEntityRef: no name in Entity
ve {[: Ben doğrudan tarayıcıda XML belgeyi yüklemek için çalışırsanız ben PHP dosyayı yüklerken de ben gibi uyarıların çok olsun "geçersiz bir karakter metin içeriğinde bulundu" gibi bir hata alırsınız (2)]}.
Bu XML iyi biçimlendirilmiş olduğu açıktır ve XML kuruluşlara dönüştürülmesi gerekir geçersiz karakterler içeriyor.
XML feed diğer çok sayıda kullanıcı tarafından sağlanan verilerin oluşur ve açıkça doğrulanmadı veya Anladım önce biçimlendirilmemesi değil çünkü bu.
Ben XML besleme tedarikçisi konuştum ve onlar içerik sağlayıcılar dışarı sıralamak için almak için çalışıyoruz söylüyorlar, ama onlar ilk girişini onaylamak gerektiği gibi bu aptalca görünüyor.
Ben temelde herhangi bir kodlama hataları düzelterek ve XML kuruluşlara herhangi bir yasadışı karakter dönüştürme XML düzeltmek gerekir, böylece PHP'nin DOMDocument fonksiyonlarını kullanarak XML yükler sorun.
: Benim kod şu gibi görünüyor
$feedURL = '3704017_14022010_050004.xml';
$dom = new DOMDocument();
$dom->load($feedURL);
Kodlama sorunu gösteren örnek bir XML dosyası (indirmek için tıklayın): feed.xml
XML kurumlara dönüştürülmüş henüz karakter içeriyor Örnek XML:
<?xml version="1.0"?>
<feed>
<RECORD>
<ID>117387</ID>
<ADVERTISERNAME>Test</ADVERTISERNAME>
<AID>10544740</AID>
<NAME>This & This</NAME>
<DESCRIPTION>For one day only this is > than this.</DESCRIPTION>
</RECORD>
</feed>