我在 PHP 文件中找到了随机页面脚本。当我在浏览器上点击刷新(重新加载)>> 刷新时,我有点沮丧STRONG>。每个随机页面都有一篇文章,有些有两个图片,但大多数是一个图片。只有 3 条款。
问题在于 2 或 3次点击才能刷新 页面。有否按钮,当您点击上的'重新加载' 页面时,它只会刷新页面浏览器(所有浏览器)或访问该网站。为了使其正常工作,它至少需要 2 或 3次点击才能刷新。
以下是代码:
<?php
$pagesArray = array("article1.php", "article2.php", "article3.php");
$randNum = rand(0, count($pagesArray)-1);
echo $pagesArray[$randNum];
?>
我也尝试修改脚本以使用“shuffle”
<?php
$pagesArray = array("article1.php", "article2.php", "article3.php");
shuffle($pagesArray);
echo $pagesArray[0];
?>
并使用“array_rand”
<?php
$pagesArray = array("article1.php", "article2.php", "article3.php");
array_rand($pagesArray);
echo $pagesArray[0];
?>
有没有办法让代码变得更好?我只想让代码刷新不同的页面而不是点击 2或3次才能使用。我感谢任何有关如何使其正常工作的建议,或者任何一个例子都会让我欣赏全貌!
由于
答案 0 :(得分:3)
我不熟悉PHP,但是如果你问的是哪种方法在你的数组中选择一个随机元素是最快的,我猜这是选项1.生成一个随机整数需要恒定的时间,并返回一个元素数组索引的数组也应该占用恒定的时间。我不知道如何实现shuffle,但是我很确定获得一个随机数比花费一系列元素花费更少的时间。无论如何,如果您的阵列中只有少数元素,则用户不应该有明显的差异。
至于为什么它需要2或3次刷新才能“工作”,我猜这可能是因为你只是多次返回同一页面。如果您可以获得用户当前所访问的页面(或已访问过的页面),则可以在选择项目之前从该数组中删除该项目。