Jak vypsat pole

kozel

Jak vypsat pole
« kdy: 10. 05. 2014, 17:27:34 »
Ahoj, mám takto nastavené pole, ale nevím, jak můžu takové pole vypsat pomocí php, zkoušel jsem to pomocí foreach ale vrací ,i to jen "array" :-( Poradí někdo? Děkuji
Kód: [Vybrat]
$array = array();
$array['foo'][] = 'aaa';
$array['foo'][] = 'bbb';
$array['foo'][] = 'ccc';
$array['foo'][] = 'ddd';


Re:Jak vypsat pole
« Odpověď #1 kdy: 10. 05. 2014, 17:40:36 »
$array[][] znamena ze mas pole poli. Nemuzes to brat jako 2D pole. Udelej tam foreach inside foreach

Karlos

Re:Jak vypsat pole
« Odpověď #2 kdy: 10. 05. 2014, 18:32:25 »
Měl jsem za to, že 2D pole je právě pole polí... Nicméně můžeš si zkusit nechat vypsat proměnnou v tom cyklu místo echem fcí print_r(), pak uvidíš, že z $array['foo'] se skutečně stalo pole. Projdi si třeba http://www.php.net/manual/en/control-structures.foreach.php oddíl
/* foreach example 4: multi-dimensional arrays */

Kit

Re:Jak vypsat pole
« Odpověď #3 kdy: 10. 05. 2014, 18:36:33 »
Kód: [Vybrat]
foreach ($array['foo'] as $item) {
    echo "$item\n";
}
nebo jednodušeji
Kód: [Vybrat]
echo implode("\n", $array['foo']);

Kit

Re:Jak vypsat pole
« Odpověď #4 kdy: 10. 05. 2014, 18:45:06 »
Teď mě napadá, že to možná chceš vypsat celé
Kód: [Vybrat]
foreach ($array as $key => $row) {
    echo "$key: " . implode(", ", $row) . "\n";
}


xxar3s_

Re:Jak vypsat pole
« Odpověď #5 kdy: 10. 05. 2014, 19:22:00 »
Kód: [Vybrat]
print_r(array('aaa', 'bbb', 'ccc', 'ddd'));

Re:Jak vypsat pole
« Odpověď #6 kdy: 11. 05. 2014, 07:53:04 »
Měl jsem za to, že 2D pole je právě pole polí

Je to mozna jenom moje vnitrni deleni, ale 2D pole chapu tak, ze libovolny prvek array[m] ma vzdy delku n a pole poli, protoze to nektere jazyky to dovoluji, chapu tak ze delky array a array[j] mohou mit jinou delku, samozrejme pro i != j

Kit

Re:Jak vypsat pole
« Odpověď #7 kdy: 11. 05. 2014, 09:07:19 »
Je to mozna jenom moje vnitrni deleni, ale 2D pole chapu tak, ze libovolny prvek array[m] ma vzdy delku n a pole poli, protoze to nektere jazyky to dovoluji, chapu tak ze delky array a array[j] mohou mit jinou delku, samozrejme pro i != j
Array v PHP de facto není jen pole, ale funguje i jako různé kolekce. Velmi často se používá jako seznam, slovník nebo jejich kombinace - tedy slovník seznamů (viz dotaz) nebo seznam slovníků (fetchAll z databáze). Takové kombinace se obvykle nesprávně označují jako 2D pole.

Jako pole se array v PHP používá spíš výjimečně.