PHP varlıkları genişleyen olmadan XML yapısı ayrıştırma

1 Cevap php

Ben içindeki varlıkları genişleyen olmadan PHP bir XML belgesinin yapısını ayıklamak çalışıyorum. Ben kişiler genellikle before yapısı ayrıştırılır genişletilmiş farkında değilim, ve bu görmezden XML iyi biçimlendirilmiş olmayabilir anlamına gelir, ama ben normal bir XML dahil olmayabilir hangi XML parçaları ayrıştırma ediyorum yani belge başlığı ve öğe bildirimleri eksik olacaktır.

Ben bunu kendim halledebilirim böylece bildirilmemiş bir varlık bulunduğunda İdeal bir geri istiyorum. XMLReader ve xml 'parserdir hem ayrıştırma sırasında bu üretmek hataları kapatmak için hiçbir yol var gibi görünüyor.

Bunu yapmanın kolay bir yolu var mı, yoksa ben (bir felaket olmaz ki - ben sadece bir kaç etiketleri ayrıştırmak, ve sonra onlara içindeki tüm metin tutmak gerekir) geri kendi çözümleyici düşmek gerekir.

İşte resmi DocBook kılavuzun ilk bölümünde bazı DocBook'un bir örnek:

<chapter id="ch-gssgml">
<?dbhtml filename="ch01.html"?>
<chapterinfo>
<pubdate>$Date$</pubdate>
<releaseinfo>$Revision$</releaseinfo>
</chapterinfo>
<title>Getting Started<?lb?>with &SGML;/&XML;</title>
<para>
    ...
</para>
</chapter>

Bu ayrıştırmak çalışıyorum sadece kısa sürede &SGML; görür ölür varlık.

1 Cevap

XMLReader üzerinden tarama biraz sonra: Bu denediniz mi:

XMLReader::setParserProperty ile kombinasyon halinde XMLReader::SUBST_ENTITIES?

, Hiçbir şey denemedim, sadece umut verici görünüyor. Gibi çalışması gerekir

XMLReader::setParserProperty ('SUBST_ENTITIES', 0);

Bu SUBST_ENTITIES kabul edecek hangi değerleri üzerinde hiçbir belge yok gibi görünüyor.

Alkış,