2010-09-03 25 views
35

Sto cercando di estrarre alcuni dati da XML, ma quando eseguo il seguente ho unUsando nomi nodo XML con trattini in PHP

Warning: Invalid argument in dotazione per foreach() in ...

Esempio di codice:

foreach ($xml->custom-field-value as $milestone) 
{ 
    ...  
} 

funziona bene per i nomi dei nodi che sono singole parole in modo da sto indovinando che non ama i trattini. Devo scappare da loro e se sì, come?

+1

Stai già facendo correttamente nel secondo 'print' – Gordon

+0

Gordon - non so cosa lo smiley per "sorriso imbarazzato" non è che mi dovrebbe usare adesso! Grazie – williamsdb

risposta

64

Da PHP manual:

elementi all'interno di un documento XML contenenti caratteri non consentiti convenzione di denominazione di PHP (ad esempio il trattino) Accesso può essere realizzato incapsulando il nome elemento all'interno bretelle e l'apostrofo.

Nel tuo caso si fa:

$xml->{'custom-field-value'} 
+0

Perfetto! Grazie. – williamsdb

+0

Questa può essere contrassegnata con una domanda doppia, ma ho trovato questa combo Q/A molto più utile di quella "originale", come era giusto al punto riguardante il mio problema. – Melikoth

Problemi correlati