| 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: 13 let
|
|||
0