Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
[Variablen] Größe eines mehrdimensionalen Arrays [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
[Variablen] Größe eines mehrdimensionalen Arrays


 
E.T.
26-01-2004, 22:01 
 
Wie bestimme ich die Größe eines mehrdimensionalen Arrays?

z. B.: $feld[$a][$b];

Mit count($feld); ermittele ich nur die Größe von $a.
Wie erfahre ich jedoch die Größe von $b ???

 
Wurzel
26-01-2004, 22:07 
 
count($feld[$a]);

 
E.T.
26-01-2004, 22:14 
 
echo count($feld[$a]);

gibt mir eine "0" aus!!!! Das ist aber falsch der zweite Wert des Arrays ist keine Null! Sonst währe das ja unsinnig!:(

 
Wurzel
26-01-2004, 22:19 
 
count($feld[$a]); geht davon aus, dass $feld[$a] auch einen eintrag hat... sonst steht da halt 0 (+ Notice: Undefined offset falls das error_reporting richtig eingestellt ist)

 
E.T.
26-01-2004, 22:28 
 
Ich glaube ich wurde etwas missverstanden! Deshalb etwas anders formuliert:

Also im Array ist eine Matrix gespeichert. Und die Dimensionen dieser Matrix gibt es heraus zu bekommen!

1 3 5 2 5 7 2
3 5 6 8 4 6 7
6 9 4 4 7 5 1 = $feld[$a][$b];
3 2 3 2 3 2 3
5 4 5 6 4 7 7


In diesem Beispiel mit dem count($feld); => 5 da die Matrix fünf Zeilen hat.
Wie erfahre ich aber die Anzahl der Spalten?

 
TobiaZ
26-01-2004, 22:30 
 
ist $feld[$a][$b] auch ein Array, dann mit count

ansonsten müsstest du halt im/exploden();

 
Wurzel
26-01-2004, 22:36 
 
wenn ich dich richtig verstehe, sieht dein array so aus?! :
$feld = array('1'=> '1 3 5 2 5 7 2',
2 => '3 5 6 8 4 6 7');dann ist $feld[$a] kein array sondern ein string und count sollte 1 liefern ... egal, wenn dem so ist, könnte das helfen:$a=1;
echo ceil(strlen(($feld[$a]))/2);

 
E.T.
26-01-2004, 22:39 
 
NEIN!!!! Das ist nicht so!!!!

$feld[1][1] = 1
$feld[1][2] = 3
$feld[1][3] = 5
usw.

$feld[1][1] = 1
$feld[2][1] = 3
$feld[3][1] = 6
usw.

So sieht es aus... eben mathematische Matrix (Aij)

 
Wurzel
26-01-2004, 23:24 
 
dann liegt dein problem wohl bei $a, $b sowie in einer feststehenden "!"-taste

 
E.T.
27-01-2004, 08:18 
 
Ich habe die richtige Lösung gefunden :teach: :

Also Zeilen gibts über count($feld);
Und Spalten über count($feld[0]);

 
derHund
27-01-2004, 13:14 
 
Ich habe die richtige Lösung gefunden :teach: :

du bist der größte!

Also Zeilen gibts über count($feld); Und Spalten über count($feld[0]);

achso? und wenn count($feld) > 1, gehts dann auch mit count($feld[1])?

 
E.T.
27-01-2004, 14:26 
 
achso? und wenn count($feld) > 1, gehts dann auch mit count($feld[1])?


Ja! es werden die Elemente von $feld[1] z.B. gezählt. Oder von $feld[2].
Ich der Wert jedoch nicht vorhanden, dann ist der Rückgabewert von count() = 0.

 
TobiaZ
27-01-2004, 19:34 
 
Ich habe die richtige Lösung gefunden Achso ist das.

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:53 Uhr.