[php] Mehrdimensionales Array mit for schleife erstellen?

Diskordier

Neu angemeldet
Registriert
14 Juli 2013
Beiträge
161
Hallo leute wie erzeuge ich ein Mehrdimensinales Array über eine for schleife?

zb das hier ist mein Code bsp

[src=php]<html>
<body>
<?php

$arr1 = array("EpisodenID" => "a", "Titel" => "b", "nr" => "c");
$arr2 = array("EpisodenID" => "1a", "Titel" => "d", "nr" => "e");
$arr3 = array("EpisodenID" => "2a", "Titel" => "f", "nr" => "g");

#arrMehrDim = Mehrdimensionales Array

$MehrDimarr[] = $arr1;
$MehrDimarr[] = $arr2;
$MehrDimarr[] = $arr3;

echo $MehrDimarr[1]['Titel'];
#ergebniss sollte d sein da das 2 array wert titel

foreach($MehrDimarr as $SubArray) {
echo "EpisodenID: ".$SubArray['EpisodenID']."<br />";
}

?>

</body>
</html>[/src]

nun möchte ich aber diese Arrays durch eine for Schleife enstehen lassen das es mir die $arr = erzeugt und ich diese nicht von Hand schreiben muss.

zb x =3

so da sich dann so was habe und es mir bei jedem Schleifen duchgang die nr um eines hoch zählt so c0 , c1 ,2

$arr[x]= array("EpisodenID" => "a", "Titel" => "b", "nr" => "c[x]");

wie mache ich das ?

Danke für eure Hilfe
 
Der Code ist mWn relativ unsauber. Viel eher würde ich den so schreiben:

[src=php]<html>
<body>
<?php

$arr1 = array("EpisodenID" => "a", "Titel" => "b", "nr" => "c");
$arr2 = array("EpisodenID" => "1a", "Titel" => "d", "nr" => "e");
$arr3 = array("EpisodenID" => "2a", "Titel" => "f", "nr" => "g");

$MehrDimarr = array();

array_push($MehrDimarr, $arr1);
array_push($MehrDimarr, $arr2);
array_push($MehrDimarr, $arr3);

echo $MehrDimarr[1]['Titel'];

foreach($MehrDimarr as $SubArray) {
echo "EpisodenID: ".$SubArray['EpisodenID']."<br />";
}

?>

</body>
</html>[/src]

Dann weiter zu deinem Problem. Es ist natürlich die Frage, wie genau deine Daten vorliegen. Laut deiner Beschreibung würde diese Schleife das Problem lösen:

[src=php]for($i = 0; $i < 100; ++$i) {
array_push($MehrDimarr, array("EpisodenID" => "a", "Titel" => "b", "nr" => "c".$i));
}[/src]

Dabei wird eben immer ein neuer Eintrag in das Array gepusht, dessen nr-Feld c{$i} ist, wobei {$i} der aktuelle Schleifenzähler ist.
 
  • Thread Starter Thread Starter
  • #3
Danke das hat mir schon sehr geholfen :)

--- [2015-04-17 02:15 CEST] Automatisch zusammengeführter Beitrag ---

Hei ho ich hab noch eine Frage und zwar wie kann ich ein normales Array das zb diese werte hat:

[src=php]array(5) (
[nr] => (string) 1
[Link] => (string)
[folderName] => (string)
[titel] => (int) 7
[epis] => (string)
)

[/src]

in ein Mehrdimensionales Array convertieren so das ich dann das habe ;

[src=php]array(5) (
[0] => array(5) (
[nr] => (string) 1
[Link] => (string)
[folderName] => (string)
[titel] => (int) 7
[epis] => (string)
)[/src]

vielen Dank für eure Hilfe
 
Sorry, hatte die Frage nicht gesehen. Für interessierte: Einfach ein neues Array erzeugen, dessen erster Wert das alte Array ist.

Altes Array:

[src=php]$arr = array(5) (
[nr] => (string) 1
[Link] => (string)
[folderName] => (string)
[titel] => (int) 7
[epis] => (string)
);[/src]

Neues Array:

[src=php]$arr = array($arr);[/src]
 
Zurück
Oben