Existerar en nod i SimpleXML?

PHP

1 svar · 299 visningar · startad av rincewind

Medlem sedan nov. 2003104 inlägg
Trådstart#1

Hej...

Sitter och importerar ett xml ark i min cod, men xmlarket har ett problem som jag inte lyckats bena ut...
Problemet är att i min foreach där jag loopar igenom ett SimplXML objekt har olika ifsatser om noder existerar eller ej.
Hur undersöker jag om en nod existerar?

if (defined($record->dates->pubdates->date->style))

Men det ger ifrån sig ett error:

[Wed Nov 14 12:23:54 2007] [error] [client 127.0.0.1] PHP Notice: Trying to get property of non-object in C:\\www\\slask\\xmlparse.test.php on line 36

Någon som vet hur jag kollar om en nod finns eller ej i XML:en i SimpleXML

Mvh
-- Rincewind

Medlem sedan juni 20014 421 inlägg
#2

SimpleXML erbjuder inget bra sätt för att undersöka den saken. Vad du kan göra är att passa över det till en funktion som kollar av childNodes() mot de childnodes du vill åt. Du borde kunna lösa det hela med en try/catch också.

278 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
137 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)