我的代码会导致图片在页面中随机出现。 但是如何插入"元素" (在我的情况下,这将是一个div)这些图像之间?
<?php
$myImagesList = array (
'image1.png',
'image2.png',
'image3.png',
'image4.png'
);
shuffle ($myImagesList);
for ($i=0; $i<4; $i++) {
echo '<img src="/image/' . $myImagesList[$i] . '" width="200" height="140" border="0" />';
}
?>
示例:
原始代码显示图片如下:
image3.png image4.png image2.png image1.png
F5刷新页面
image2.png image1.png image4.png image3.png
F5刷新页面
image4.png image2.png image3.png image1.png
我需要这样:
image2.png image1.png
内容
image4.png image3.png
F5刷新页面
image4.png image2.png
内容
image1.png image3.png
F5刷新页面
image2.png image3.png
内容
image4.png image1.png
答案 0 :(得分:0)
你会想要这样的东西......
$myImagesList = array (
'image1.png',
'image2.png',
'image3.png',
'image4.png'
);
shuffle ($myImagesList);
$i = 0;
foreach ($myImagesList as $img) {
$i++;
if ($i % 3 === 0) { /* show content */ }
echo '<img src="/image/' . $img . '" width="200" height="140" border="0" />';
}
无论列表大小如何,这都会为您提供每三次迭代的内容部分。
答案 1 :(得分:0)
如果要在这两对图像之间添加div
(内容),请在循环中添加其他条件:
...
for ($i=0; $i<4; $i++) {
if ($i == 1) echo '<div>some content ...</div>';
echo '<img src="/image/' . $myImagesList[$i] . '" width="200" height="140" border="0" />';
}
答案 2 :(得分:0)
使用最易读的解决方案 - 不会让您跌倒并在以后更改内容时进行调试。
$splitAtNumber = 2; // or dynamically use count($myImagesList) / 2 or ....
// output first part of the array
for ($i = 0; $i < $splitAtNumber; $i++) {
echo '<img src="/image/' . $myImagesList[$i] . '" width="200" height="140" border="0" />';
}
// Output your content
echo 'content';
// Output second part of the array
for ($i = splitAtNumber; $i < count($myImagesList); $i++) {
echo '<img src="/image/' . $myImagesList[$i] . '" width="200" height="140" border="0" />';
}