我正在尝试生成一个如下所示的数组:
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()
)。
谢谢!
答案 0 :(得分:1)
PHP中的数组实际上是键和值之间的映射。关键必须是独一无二的。因此你不能拥有
[Album1] => '<img src="album1_thumb1.jpg">'
[Album1] => '<img src="album1_thumb2.jpg">'
您需要考虑另一种满足您需求的数据结构