/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
hent key fra array
Fra : scootergrisen


Dato : 07-10-11 04:15

Jeg har et array som jeg gennemgår med en masse foreach() løkker også
når jeg er inden midt i koden vil jeg gerne kunne "se tilbage" til den
key som hedder 'aaa1' i det ene array.
Også ved næstegennemgang skal den skrive 'aaa2' også 'aaa3'.

Alstå jeg skal "bare" echo den key som er øverst i hver af de 3 array.
Tænker det må være noget med key() eller $variable{key($variable)] eller
sådan noget.


$array = array(
'aaa1' => array(
'bbb1' => 'ccc1'
,'ddd1' => 'eee1'
)
),'aaa2' => array(
'bbb2' => 'ccc2'
,'ddd2' => 'eee2'
)
),'aaa3' => array(
'bbb3' => 'ccc3'
,'ddd3' => 'eee3'
)
)


foreach($array as $key){
foreach($key as $q => $w){
foreach($w as $e){
foreach($e as $f => $g){

Hvordan får jeg 'aaa1' herinde fra ?
Og derefter 'aaa2' også 'aaa3' ?
echo key($w);

}
}
}
}

 
 
Martin (07-10-2011)
Kommentar
Fra : Martin


Dato : 07-10-11 09:15

On 07-10-2011 05:14, scootergrisen wrote:
> Jeg har et array som jeg gennemgår med en masse foreach() løkker også
> når jeg er inden midt i koden vil jeg gerne kunne "se tilbage" til den
> key som hedder 'aaa1' i det ene array.
> Også ved næstegennemgang skal den skrive 'aaa2' også 'aaa3'.
>
> Alstå jeg skal "bare" echo den key som er øverst i hver af de 3 array.
> Tænker det må være noget med key() eller $variable{key($variable)] eller
> sådan noget.
>
>
> $array = array(
> 'aaa1' => array(
> 'bbb1' => 'ccc1'
> ,'ddd1' => 'eee1'
> )
> ),'aaa2' => array(
> 'bbb2' => 'ccc2'
> ,'ddd2' => 'eee2'
> )
> ),'aaa3' => array(
> 'bbb3' => 'ccc3'
> ,'ddd3' => 'eee3'
> )
> )
>
>
> foreach($array as $key){
> foreach($key as $q => $w){
> foreach($w as $e){
> foreach($e as $f => $g){
>
> Hvordan får jeg 'aaa1' herinde fra ?
> Og derefter 'aaa2' også 'aaa3' ?
> echo key($w);
>
> }
> }
> }
> }

foreach(array_keys($array) AS $key) {
echo $key; // aaa1, aaa2, aaa3
}

Eller hvis du vil have det på samme måde som dit

foreach($array AS $key => $value) {
echo $key; // aaa1, aaa2, aaa3
if (! is_array($value)) $value = array($value);
foreach ($value AS $k => $v) {
echo $k; // bbb1, ddd1, bbb2, ddd2, bbb3, ddd3
echo $v; // ccc1, eee1, eee2, ccc3, eee3
}
}

scootergrisen (07-10-2011)
Kommentar
Fra : scootergrisen


Dato : 07-10-11 16:08


Tak jeg har godt nok fundet en løsning... men det bare meget besværligt
syns jeg.

Men jeg kan nok godt bruge den der array_keys() på et tidspunkt.

Nu virker det... sådan koden er meget rodet.

Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407847
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste