Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 362 Pomógł: 0 Dołączył: 18.02.2004 Skąd: Knurów Ostrzeżenie: (0%)
|
Mam taki kod:
No i wszystko jest ok, dopóki nie chce spróbować złapać wyjątku. Zmieniam kolejność elementów w dokumencie XML i wyświetla mi takie coś: Kod Warning: DOMDocument::load() [function.load]: Element article content does not follow the DTD, expecting (title , date , author+ , content), got (date title author content ) in /home/matid/www/Current/XML/article.xml, line: 15 in /home/matid/www/Current/XML/XML.test.php on line 8 Logicznym się wydaje, że powinno wyrzucić wyjątek, niestety tak nie jest. Ustawienie zmiennej strictErrorChecking na true (BTW domyślnie też jest true) powinno zmusić DOM do wyrzucania DOMException. Wie ktoś dlaczego? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 9.11.2004 Ostrzeżenie: (0%)
|
Czemu oczekujesz od validatora DTD, że wyrzuci wyjątek? Błąd DTD to nie błąd parsera, ani też błąd podczas ładowania - a takie właśnie wywalają DOMException. A Warning jest generowany chyba tylko dlatego, żeby w jakiś sposób było wiadomo, że validacja się nie powiodła(jeśli weryfikujesz na starcie nie masz możliwości zobaczenia co zwróciła weryfikacja). Zauważ, że po tych warningach dokument XML w przeglądarce nadal jest wyświetlany.
|
|
|
|
matid DOMDocument i Exceptions 4.05.2005, 16:25:46
matid Cytat(dasko @ 2005-05-04 19:06:38)Czemu oczek... 4.05.2005, 19:06:05
dasko CytatW manualu pisze, że jeśli walidacja się nie p... 4.05.2005, 19:43:58
NuLL A ja słyszałem, że tylko konstruktory obiektow dos... 4.05.2005, 23:07:03
matid Ja sobie chwilowo radzę z tym w ten sposób:
[PHP] ... 5.05.2005, 06:33:21
NuLL I tak to musisz robić... 5.05.2005, 12:25:01
hawk IMHO ten warning jest potwornym kretynizmem. Jak w... 5.05.2005, 19:48:34 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 23:45 |