theresa: array - warum inhalt, aber keine ausgabe??

hi leute!

ich fülle ein mehrdimensionales array (heisst das so?)
wie folgt mit daten:

$array[$userid][$logfiledate][] = $action;

folgendes gibt mir den korrekten inhalt aus:
print_r($array[12]);

aber das geht nicht, obwohl die dementsprechenden daten vorhanden sind:
print_r($array[12][16022006]);

kann mir dasjemand erklären??

danke,
theresa

  1. Hallo Theresa,

    ich fülle ein mehrdimensionales array (heisst das so?)

    Ja, das nennt man so.

    aber das geht nicht, obwohl die dementsprechenden daten vorhanden sind:
    print_r($array[12][16022006]);

    Was genau heißt geht nicht? Kommt eine Fehlermeldung oder einfach nur überhaupt nichts? Hast du schonmal mit isset() überprüft, ob $array[12][16022006] überhaupt gesetzt ist?

    Schöne Grüße,

    Johannes

    --
    ie:% fl:( br:< va:| ls:[ fo:) rl:) n4:? ss:| de:] js:| ch:} sh:) mo:| zu:)
  2. echo $begrüßung;

    ich fülle ein mehrdimensionales array (heisst das so?)

    Jein. Array in PHP sind erst einmal nur Listen die Elemente enthalten. Ein Element kann durchaus wieder ein Array sein, muss aber nicht. Man kann diese Verschachtelung beliebig unregelmäßig gestalten und dies sieht dann eher wie eine Baumstruktur aus (siehe auch die Ausgaben von print_r() und var_dump()). Wenn alle Elemente einer bestimmten Verschachtelungstiefe die gleiche Anzahl Kinder haben, kann man dieses Gebilde als mehrdimensional betrachten, es bleibt aber im Grunde genommen eine verschachtelte Baumstruktur.

    folgendes gibt mir den korrekten inhalt aus:
    print_r($array[12]);

    aber das geht nicht, obwohl die dementsprechenden daten vorhanden sind:
    print_r($array[12][16022006]);

    Steht das unmittelbar hintereinander? Setze doch mal das error_reporting auf E_ALL. Vielleicht bekommst du dann Notizen angezeigt, die dir aufzeigen, wo etwas schief gelaufen ist. Ebenso kannst du mal var_dump() statt print_r() verwenden, das zeigt dir noch ein paar mehr Informationen an, wie beispielsweise den Typ einer Variablen (oder eines Arrayelements).

    echo "$verabschiedung $name";