Autor | Zpráva | ||
---|---|---|---|
Prochy Profil |
#1 · Zasláno: 19. 10. 2012, 15:05:33 · Upravil/a: Prochy
Zdravim,
snažim se tu zpracovat jeden XML soubor (pomocí simpleXML), ale nějak mi to hlava nebere. Mám třídu v které při vytvoření instance buďto vytvoří prázdný XML soubor nebo načte uvedený v parametru. Poté tam mám funkci, která mi zjistí pevnou linku a to následnovně: if (is_array($this->gdChildren->phoneNumber)) { foreach ($this->gdChildren->phoneNumber as $phoneNumber) { if ($phoneNumber->attributes()->rel == self::HOME) { return htmlspecialchars($phoneNumber); } } } else { if ($this->gdChildren->phoneNumber->attributes()->rel == self::HOME) { return htmlspecialchars($this->gdChildren->phoneNumber); } } return null; Problém je, že tady mi podmínka is_array() vyhodí false, ikdyž pokud si dumpnu $this->gdChildren, tak výpis je následující: SimpleXMLElement(3) { name => SimpleXMLElement(3) { fullName => "Dvořák Jiří" (10) givenName => "Jiří" (6) familyName => "Dvořák" (8) } email => array(2) [ 0 => SimpleXMLElement(0) 1 => SimpleXMLElement(0) ] phoneNumber => array(2) [ 0 => "5646546546" (10) 1 => "123456789" (9) ] } A u phoneNumber je psaný array, tak nechápu, proč mi to vyhodnotí jako FALSE, druhá věc je ta, že pokud dumpnu $this->gdChildren->phoneNumber, tak to vypíše pouze jedno číslo: SimpleXMLElement(1) { 0 => "5646546546" (10) } Nějak mi něco uniká, ale nevim co. Předem děkuji za rady. Moje chyba, měl sem se první podívat více po internetu. Musel jsem použít iterator_to_array(). |
||
Časová prodleva: 12 let
|
0