PHP ramdom字不重复

时间:2016-03-28 05:38:38

标签: php

我有以下代码:

<?php
$banner1 = 'text 1';
$banner2 = 'text 2';
$banner3 = 'text 3';
$banner4 = 'text 4';
$banner5 = 'text 5';
$banner6 = 'text 6';
$banner7 = 'text 7';
$banner8 = 'text 8';
$banner9 = 'text 9';
$banners = array($banner1, $banner2, $banner3, $banner4, $banner5, $banner6, $banner7, $banner8, $banner9);
shuffle($banners);
?>

<?php print $banners[0] ?>

我如何对值(文字1,2,3 ......)不再重复?

PS:在重新加载页面时不重复同一用户(F5)

(抱歉我的英语不好)

1 个答案:

答案 0 :(得分:0)

执行此操作的一种方法是...将其保存在会话中,打印后从阵列中删除。在会话中再次保存。

session_start();
$banner1 = 'text 1';
$banner2 = 'text 2';
$banner3 = 'text 3';
$banner4 = 'text 4';
$banner5 = 'text 5';
$banner6 = 'text 6';
$banner7 = 'text 7';
$banner8 = 'text 8';
$banner9 = 'text 9';
$banners = isset($_SESSION['banners']) ? $_SESSION['banners'] : array($banner1, $banner2, $banner3, $banner4, $banner5, $banner6, $banner7, $banner8, $banner9);
shuffle($banners);

echo $banners[0];
unset($banners[0]);
$_SESSION['banners'] = $banners;

if( count($_SESSION['banners']) == 0 ) unset($_SESSION['banners']);