我正在构建一个网站,每次刷新页面时都会随机显示一个 yelp 列表。yelp search api 在一个数组中返回 20 个列表。现在,我正在使用 PHP 的函数 rand(0,19) 来在每次刷新页面时生成一个随机列表( $businesses[rand(0,19)] )。
有人可以向我推荐一种更智能的随机化方法吗?我想在重复任何一个之前显示所有 20 个列表一次。处理这个问题的首选方法是什么?
以下答案不起作用,因为每次刷新页面时都会重新创建数字。我猜我需要存储我已经使用过的号码?
$numbers = range(0, 19);
shuffle($numbers);
// Handle Yelp response data
$response = json_decode($data);
$RANDOM = rand(1,19);
$business = $response->businesses;
echo "<img border=0 src='".$business[$RANDOM]->image_url."'><br/>";
echo $business[$RANDOM]->name."<br/>";
echo "<img border=0 src='".$business[$RANDOM]->rating_img_url_large."'><br/>";
?>