Autor Zpráva
tom-as
Profil *
potrebuju rekurzivni funkci, ktera ma postupne naplnit pole, ale nevim jak v php predavat jako parametr ukazatel na pole

melo by to vypadat nejak takto (toho, ze to nicim neplnim a ze se to zacykli si nevsimejte, je to jen priklad, jde mi o ten parametr)

function strom($pole) {
for ($i=0; $i<2; $i++) {
strom($pole[$i]);
}
}
strom($pole);

ale tak jak to je ted se funkci predava obsah bunky pole v $pole[$i], ale ja potrebuju predat ukazatel na tu bunku, tj. aby se postupne plnilo pole prvni urovne $pole[$i], potom druhe urovne $pole[$i][$j], treti urovne $pole[$i][$j][$k]...

vysledek by mel vypadat nejak takhle:
$pole[0][0][0]...
$pole[0][0][1]...
$pole[0][1][0]...
$pole[0][1][1]...
$pole[1][0][0]...
$pole[1][0][1]...
$pole[1][1][0]...
$pole[1][1][1]...

uz mne napadlo predavat to jako text a potom prez eval() a ${$text}[], ale urcite existuje nejake elegantnejsi reseni ;)

predem dik
nightfish
Profil
nestačilo by následující?
function strom(&$pole) {...
(předání odkazem, ne hodnotou)
tom-as
Profil *
tak uz jsem to vyresil, chyba byla jinde, a funguje to i bez toho & (pri pouziti pole jako parametru se ukazatel predava automaticky)

uplne lamerska chyba..., do $pole[$i] sem ulozil napr. "auto" a potom se chtel davat do $pole[$i][] jeho barvy a vubec sem si neuvedomil, ze do bunky pole muzu dat bud jen hodnotu nebo jen pole, a ne oboji naraz...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0