Udskriv 3-dimensionelt array?

Tags:    php

Hejsa :)

$_SESSION['basket'][0][0] = 1;
$_SESSION['basket'][0][1] = 1;
$_SESSION['basket'][1][0] = 1;
$_SESSION['basket'][1][1] = 1;

foreach($_SESSION['basket'][] as $basket) {
$pid = $basket['pid'];
$number = $basket['number'];
print $number." x ".$pid."<br>";
}

Sådan ser det ud, og kan også godt forstår hvorfor det ikke virker ... det går jo netop galt her "$_SESSION['basket'][]", men ved ikke hvordan jeg skal angive det.

Den anden dimension i arrayet er ikke sorteret sat i speciel nummerorden, men man kan selvfølgelig udskrive det med en løkke som går fra 0 - "højst angivet", men det vil jo være lidt sjusk, da den så unødvendigt køre igennem en der hedder 3 hvis det ikke eksistere og så videre ... ved ikke om det var til at forstå, men ellers vil jeg bare vide hvordan man udskriver et 3-dimensionelt array på en ordentlig måde :D



1 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Hejsa :)

$_SESSION['basket'][0][0] = 1;
$_SESSION['basket'][0][1] = 1;
$_SESSION['basket'][1][0] = 1;
$_SESSION['basket'][1][1] = 1;

foreach($_SESSION['basket'][] as $basket) {
$pid = $basket['pid'];
$number = $basket['number'];
print $number." x ".$pid."";
}

Sådan ser det ud, og kan også godt forstår hvorfor det ikke virker ... det går jo netop galt her "$_SESSION['basket'][]", men ved ikke hvordan jeg skal angive det.

Den anden dimension i arrayet er ikke sorteret sat i speciel nummerorden, men man kan selvfølgelig udskrive det med en løkke som går fra 0 - "højst angivet", men det vil jo være lidt sjusk, da den så unødvendigt køre igennem en der hedder 3 hvis det ikke eksistere og så videre ... ved ikke om det var til at forstå, men ellers vil jeg bare vide hvordan man udskriver et 3-dimensionelt array på en ordentlig måde :D


print_r() er meget nyttig til debug af arrays:
print_r($_SESSION['basket']);

Så vidt jeg kan se har du ikke nogle keys der hedder pid og number, hvilket nok også ødelægger det.

Jeg kan ikke helt genneskue strukturen i dit array, men her er noget der måske kan hjælpe:

while(list($key1,$values1)=each($_SESSION['basket']))
{
while(list($key2,$values2)=each($_SESSION['basket'][$key1]))
{
print('key1: '.$key1.', values1: '.implode(',',$values1)
.'- key2: '.$key2.', values2: '.implode(',',$values2));
}
}
--
Thus, I conclude



t