Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [XML] Komentarze <!-- -->
flashion
post 9.02.2008, 13:58:17
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 4.11.2007

Ostrzeżenie: (0%)
-----


Witam,

Mam problem z komentarzami - <!--...-->
PHP czyta je jako osobny węzęł. Błąd wywala podczas pętli pobierającej atrybuty ze wszystkich węzłów:
Kod
[b]Fatal error[/b]:  Call to undefined method DOMComment::getAttribute() in [b]...[/b]


Jak zrobić, by omijał przy parsowaniu tego typu komentarze?
Z góry dziękuję
Go to the top of the page
+Quote Post
splatch
post 9.02.2008, 14:24:44
Post #2





Grupa: Zarejestrowani
Postów: 487
Pomógł: 7
Dołączył: 7.01.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Możesz skorzystać z instanceof.
  1. <?php
  2. if (!($node instanceof DOMComment)) {
  3. $node->getAttribute('blabla');
  4. }
  5. ?>


Drugi sposób to getNodeType.
  1. <?php
  2. if ($node->getNodeType() != XML_COMMENT_NODE) {
  3. $node->getAttribute('blabla');
  4. }
  5. ?>


Wszystkie dostępne typy węzłów znajdziesz w dokumentacji.


--------------------
Łukasz Dywicki
Independent Java and open source software consultant.
Blog - Java, OSGi, integracja oprogramowania..
Go to the top of the page
+Quote Post
flashion
post 9.02.2008, 15:16:37
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 4.11.2007

Ostrzeżenie: (0%)
-----


instanceof nie dyga, ale za to trochę przerobiony 2 sposób...
Kod
<?php
if ($node->nodeType != XML_COMMENT_NODE) {
    $node->getAttribute('blabla');
}
?>

działa wyśmienicie! winksmiley.jpg

dziękuję bardzo. reput.

Ten post edytował flashion 9.02.2008, 15:16:55
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 19:42