显示2张随机图片PHP,没有重复

时间:2014-04-15 20:20:00

标签: php

我在PHP中有点像菜鸟,我现在正在学习它。我制作的网站并排显示2张随机图片。但是目前使用我当前的代码,这意味着在某些情况下,您可能会将相同的图片加载两次。这是我的代码:

<img src="images/
<?php
$pics = array('image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg');
echo $pics[array_rand($pics)];
?> " />

<img src="images/
<?php
$pics = array('image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg');
echo $pics[array_rand($pics)];
?> " />

3 个答案:

答案 0 :(得分:4)

尝试以下

<?php
$pics = array('image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg');
$images = array_rand($pics, 2);
?>

<img src="images/<?php echo $pics[$images[0]]; ?>" />
<img src="images/<?php echo $pics[$images[1]]; ?>" />

答案 1 :(得分:1)

array_rand可以返回随机条目列表,而不仅仅是一个。 http://www.php.net/manual/en/function.array-rand.php

<img src="images/
<?php
$pics = array('image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg');
$keys= array_rand($pics, 2);
echo $pics[$keys[0]];
?> " />

<img src="images/
<?php
echo $pics[$keys[1]];
?> " />

答案 2 :(得分:1)

首先确定两个随机图像,然后处理显示部分。

<?php
$pics = array('image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg');
$indexes = array_rand($pics, 2);
?>

<img src="images/
<?php
echo $pics[$indexes[0]];
?> " />

<img src="images/
<?php
echo $pics[$indexes[1]];
?> " />