我有5个jpg,分别命名为01.jpg,02.jpg..... 05.jpg。我有一个小脚本生成一个 1-5 之间的数字并购买与之相关的 jpg ....很好......但是每次我重新加载页面时,图片“应该”是随机的,所以不同,但只有 5 张图像,我在重新加载“更多”时得到相同的图像,我该怎么办......所以问题是......热确定,在重新加载网页时随机数应该是在 1-5 之间并且与之前的第二个不一样......所以我肯定会连续 5 次看到至少重新加载 5 张图片!......
请使用 php 的 ajvascript
代码如下:
<style type="text/css">
#photo { background-image: url(http://www.something/pano-0<?php echo mt_rand (1,5) ?>.jpg); }
</style>
注意: 对于那些说这是一个序列的人……不,我喜欢随机的……至少不要选择相同的
假设如果#3 显示,你随机......你可以有 1,2,3,4,5,让 2,如果 3,重新随机!
最佳答案
与@Jon Snyder 的回答非常相似,但使用 $_SESSION
而不是 $_GET
:
<?php
// initialize session
session_start();
// array of possible images
$images = array('01.jpg', '02.jpg', '03.jpg', '04.jpg', '05.jpg');
// check if user has seen an image before
$last = isset($_SESSION['last_img']) ? $_SESSION['last_img'] : -1;
// generate a random number that isn't the same as $last
do { $num = rand(0, count($images)-1); } while ($num == $last);
// display image
echo '<img src="' . $images[$num] . '">' . PHP_EOL;
// save last image in $_SESSION
$_SESSION['last_img'] = $num;
?>
关于php - 真正的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5124116/