foreach-Schleife mit zwei Array

fredolin

Erfahrenes Mitglied
Hallo PHP Gemeinde,

dickes Problem..

ich habe mir ekin mehrdemensionales Array gebaut und nun möchte ich dies in einer foreach-Schleife durchlaufen lassen und einzeln auf alle Werte zugreifen. DOch leider klappt dies nicht. hier mal mein Code

Das Array:
PHP:
$imagesflow = array(
	'thumbs'	=> array('img/gallery/fesselspiele/thumbs/spielart_01.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_02.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_03.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_04.jpg'),
																 
	'big'		=> array('img/gallery/fesselspiele/big/spielart_01.jpg',
					 'img/gallery/fesselspiele/big/spielart_02.jpg',
					'img/gallery/fesselspiele/big/spielart_03.jpg',
					'img/gallery/fesselspiele/big/spielart_04.jpg'),
);

hier nun die foreach-Schleife
PHP:
foreach ($imagesflow[thumbs] as $i => $bild) {
	$i +1;
	echo '<img longdesc="'.$bild.'" id="'.$i.'" src="'.$bild.'"  border="0" width="157" height="235" alt="Image '.$i.'" />';
}

Wie kann man es schaffen, das ich in einer foreach-schleife beide Array durchlaufen lassen kann und in meinen echo Tag folgendes stehen hab:
PHP:
foreach(....){
   $....;
   echo '<img longdesc="'.$bigpic.'" id="'.$.'i" src="'.$thumbspic.'" border="0".... />';

  wobei $bigpic = Bild aus dem Array 'big' ist und $thumbspic = Bild aus dem Array 'thumbs' ist.

}

Kann mir da eine Helfen


Lieben Gruß
Fredolin
 
Eine einfache for-Schleife sollte hier genügen ;)
Anzahl der Felder herausfinden mit count und "for" darüber laufen lassen.
 
Hallo Zodiac und alle anderen ..

erstmal danke für die schnelle Antwort, doch ich habe die Lösung selbst gefunden.

Die Lösung ist, das ich die Arrays zusammen lege und dann durch die foreach-schleife jage.

Hier mein Lösungsweg
PHP:
$imagesflow = array(
	'thumbs'	=> array('img/gallery/fesselspiele/thumbs/spielart_01.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_02.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_03.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_04.jpg'),
																 
	'big'		=> array('img/gallery/fesselspiele/big/spielart_01.jpg',
					'img/gallery/fesselspiele/big/spielart_02.jpg',
					'img/gallery/fesselspiele/big/spielart_03.jpg',
					'img/gallery/fesselspiele/big/spielart_04.jpg'),
);

$picturegallery = array_combine($imagesflow['thumbs'], $imagesflow['big']);

foreach ($picuregallery AS $i => $bild){
 //das was gemacht werden soll
 $i = liest das Array von Thumbs aus
 $bild das von Big.

}

Jo hoffe ich helfe Euch, wenn Ihr auch so ein Prob habt.


Gruß
Matthias
 
Das ist eine höllisch langsame Variante.
Aber sofern das was du da schreibst nicht für etwas Modelliert ist, was viele aufrufe pro Sekunde aushalten musst ist's ok. ;)
 
PHP:
$thumbs = array('img/gallery/fesselspiele/thumbs/spielart_01.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_02.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_03.jpg',
					 'img/gallery/fesselspiele/thumbs/spielart_04.jpg');
																 
$big = array('img/gallery/fesselspiele/big/spielart_01.jpg',
					 'img/gallery/fesselspiele/big/spielart_02.jpg',
					'img/gallery/fesselspiele/big/spielart_03.jpg',
					'img/gallery/fesselspiele/big/spielart_04.jpg');
);
$i=0;
foreach ($thumbs as $key => $value) {
        $i++;
	echo '<img longdesc="'.$value.'" id="'.$i.'" src="'.$value.'"  border="0" width="157" height="235" alt="Image '.$big[$key].'" />';
}
oder zwei Array daraus machen und mit dem Key durchgehen..

*Ah zu spät*
mfg chmee
 
Zurück