Autor | Zpráva | ||
---|---|---|---|
m93a Profil |
#1 · Zasláno: 16. 10. 2012, 17:01:01
Dobrý den, pracuji s DOM a narazil jsem na problém. Mám proměnnou
$i typu integer a objekt $tbl typu DOMNodeList a potřebuju ve while zjistit postupně atribut class všech jeho členů. Problém ovšem nastane při použití funkce DOMElement::getAttribute().
Při tomto kódu funguje bez problémů a vypíše 'string(123) "název třídy"': var_dump($tbl -> item($i) -> getAttribute('class')); Tento kód vyhazuje "Call to a member function getAttribute() on a non-object": $class = $tbl -> item($i) -> getAttribute('class'); Nevím, co stím (hlavně proto, že mezi uvedenými kódy nevidím téměř žádný rozdíl). Poraďte mi, prosím, jak se to dá opravit. Dík, m93a. |
||
ShiraNai7 Profil |
$i musí být mimo rozsah.. pak item() nevrátí objekt.
Použij foreach. foreach($tbl as $item) { $class = $item->getAttribute('class'); } Pokud trváš na použití metody item(), tak takto: for($i = 0; $i < $tbl->length; ++$i) { $class = $tbl->item($i)->getAttribute('class'); } |
||
Časová prodleva: 8 dní
|
|||
m93a Profil |
ShiraNai7:
Nevím, jestli to funguje, ale určitě je to o hooooooooooooooooooooooooodně pomalejší :D EDIT: Jo funguje to, díky :D |
||
Časová prodleva: 12 let
|
0