Autor Zpráva
Merllyn
Profil *
Zdravím,
mám takovej php kod
<pre>$menu = array(
'home' => 'Home',
'kontakty' => 'Kontakty',
)</pre>

a potřeboval bych poradit, jestli jde přidat další položka do toho pole
něco jako tohle
<pre>$menu = array(
'home' => 'Home' => 'Domů',
'kontakty' => 'Kontakty' => 'Napište nám',
)</pre>

nebo se to dělá jinak, jde to vůbec? Děkuji
Medvídek
Profil
Merllyn:
Do pole můžeš vložit další pole, třeba:
$menu = array('home'=> array('Home','Domů')));
Nebo
$menu['home'][]="Home";
$menu['home'][]="Domů";
Merllyn
Profil *
Děkuji Vám, poradil by jste mi prosím v tom prvním názorném příkladu jak bych to mohl vypsat? Nějak mi to moc nejde, asi jsem na to už moc starej :-( Děkuji

$menu = array('home'=> array('Home','Domů'));

foreach($menu as $url => $nazev as $url => $title){
echo '<a href="'.$url.'" title="'.$title.'">"'.$nazev.'"</a>';
}
Alutom
Profil
Merllyn:
Jelikož máte v poli jako hodnotu uložené pole, musíte s ním tak pracovat. „Mnohonásobný“ foreach, jak jste ho napsal, neexistuje, jedině že byste do jednoho cyklu foreach vložil další, což je ovšem v tomto případě zbytečné. Stačí, když to upravíte následujícím způsobem:

$menu = array('home'=> array('Home','Domů'));
foreach($menu as $url => $data) {
  echo '<a href="'.$url.'" title="'.$data[1].'">"'.$data[0].'"</a>';
} 

V prvním (a zde zatím jediném) cyklu bude $data[0] obsahovat 'Home', zatímco $data[1] bude obsahovat 'Domů'.

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: