Autor | Zpráva | ||
---|---|---|---|
nevim Profil * |
#1 · Zasláno: 3. 12. 2012, 16:24:34
Dobry den,
Na internetu jsem nepochopil jak inicializovat dvourozmerne pole. Pobopil jsem to tak, ze nejdrive musim udelat jednorozmerne a do toho vnorit dalsi pole, ale to je blbost ne? jak udelam typicky pole jako treba v cecku? |
||
Radek9 Profil |
#2 · Zasláno: 3. 12. 2012, 16:52:18
nevim:
Prostě stejně jako v C, pole polí. :-) Můžeš si na to napsat funkci: function array2D($rows) { $arr = array(); for ($i = 0; $i < $rows; ++$i) { $arr[] = array(); } return $arr; } $my2DArray = array2D(10); |
||
norman Profil * |
#3 · Zasláno: 3. 12. 2012, 17:03:13
Nejspíš mysíš toto ne?
<?php $array = array(); $array[] = 1; $array[] = 2; // výsledek je zapisován jako array(1,2) nebo tako jako associativní pole array(0 => 1, 1 => 2) nebo: $array = array(); $array[] = array(1,2); // výsledek vypadá takto array(array(1,2)) nebo opět jako assoc array(0 => array(0=> 1, 1 => 2)) potřetí klíče můžeš změnit: $array = array(); $array['klic'] = 'hodnota'; // výsledek vypadá takto array('klic' => 'hodnota') Doufám že jsem tě moc nezmátl :) celé to totiž de zapsat třeba takto: <?php $array = array( 'jedna', 'dva' ); //ekvivalent k assoc. poli $array = array( 0 => 'jedna', 1 => 'dva' ); // vicerozmerné pole $array = array( 'jedna' => array('jedna', 'dva') ); //jak to vypadá vždy můžeš zjistit pomocí fce var_dump() nebo print_r |
||
nevim Profil * |
#4 · Zasláno: 3. 12. 2012, 17:40:39
Radku, dekuji, jen bych se chtel jeste zeptat, jak nadefinuji, jak ma byt to pole veliky?
chapu tedy spravne function array2D($rows) { $arr = array(); for ($i = 0; $i < $rows; ++$i) { $arr[] = array(); } return $arr; } $my2DArray = array2D(10); ze k tomu pak pristupuju $my2DArray[maximalne_10][jakekoliv cislo] = neco P.S.:V PHP sou teda divny pole, v Cecku je to lepsi :( |
||
Radek9 Profil |
nevim:
„Capu to spravne?“ Jo, víceméně to cápeš správně. „P.S.:V PHP sou teda divny pole, v Cecku je to lepsi :(“ Nejsou to tak úplně pole (ikdyž se tak jmenují), jsou to spíš HashMapy a Listy. Takhle to je ale snad ve všech dynamicky typovaných jazycích. ;-) |
||
Alphard Profil |
#6 · Zasláno: 3. 12. 2012, 18:15:17
nevim:
Jak se s tím polem dál pracuje? PHP na rozdíl od C pracuje dynamicky, což přináší i jiný přístup k práci. Obvykle není potřeba připravovat si prázdné pole o určité velikost. PHP vytvoří nové vícerozměrné pole velice snadno, viz manuálový příklad php.net/manual/en/language.types.array.php // Create a new multi-dimensional array $juices["apple"]["green"] = "good"; Pro počáteční definici se doporučuje (nevím, jestli oficiálně) oznámit, že $juices bude pole, toť vše.
$juices = array(); $juices["apple"]["green"] = "good"; |
||
nevim Profil * |
#7 · Zasláno: 4. 12. 2012, 15:24:34
Alpharde, moc děkuji, to je přesně to co jsem potřeboval vědět, děkuju....
|
||
Časová prodleva: 12 let
|
0