Я пытаюсь создать массив, который выглядит так:
Array ( [Album1] => '<img src="album1_thumb1.jpg">' [Album1] => '<img src="album1_thumb2.jpg">' [Album2] => '<img src="album2_thumb1.jpg">' [Album2] => '<img src="album2_thumb2.jpg">' )
Прямо сейчас у меня есть две вложенные петли foreach, которые выглядят так:
$subfolders = glob($directory); foreach($subfolders as $subfolder) { $photos = glob($subfolder.'/*.[Jj][Pp][Gg]'); foreach($photos as $photo) { $thumbnail = $subfolder.'/thumbs/'.$photoname[0].'_thumb.jpg'; $thumb = '<img src="'.$thumbnail.'" class="thumb_image">'; $folderthumbs[$subfolder] .= $thumb; } }
Однако это не делает то, что я хочу, поскольку он в основном создает массив, который выглядит так:
Array ( [Album1] => '<img src="album1_thumb1.jpg"><img src="album1_thumb2.jpg">' [Album2] => '<img src="album2_thumb1.jpg"><img src="album2_thumb2.jpg">' )
Как я могу это исправить?
В конечном счете, я хотел бы сделать, чтобы одно одиночное случайное эскиз из каждого альбома эхом отдавалось дальше по странице … Если кто-то мог бы также объяснить, как это сделать, я был бы благодарен, хотя если бы я мог получить массив работая, как мне хотелось бы, я, вероятно, смогу выяснить, как это сделать (я знаю, что мне нужно использовать array_rand()
).
Благодаря!
Массив в PHP действительно является сопоставлением между ключом и значением. Ключ должен быть уникальным. Поэтому вы не можете
[Album1] => '<img src="album1_thumb1.jpg">' [Album1] => '<img src="album1_thumb2.jpg">'
Вам нужно подумать о другой структуре данных для удовлетворения потребностей