下载鸥 > 网站下载 > 开发教程 > PHP

PHP怎样实现从数组随机取值的效果?

245 2021-04-20 15:20:59

收藏
在开发过程中,我们很多时候会接到猜你喜欢的随机展示效果。这个随机,用php取值要好过MySQL的rand(),但php似乎是不支持随机指定数组取值的,即便有一个array_rand(),也只是随机键不随机值,不好用。

但我们可以换一个解决思路:

PHP怎样实现从数组随机取值的效果?
通过shuffle() + array_slice()的组合,完成从数组中随机取值的效果。

可参考源码如下:
<?php
    $a=array("red","green","blue","yellow","brown","black");
    shuffle($a);
    $b=array_slice($a,0,3);
    print_r($b);
?>

刷新了三次,最终输出的结果分别为
Array ( [0] => green [1] => brown [2] => blue )
Array ( [0] => brown [1] => green [2] => yellow )
Array ( [0] => yellow [1] => brown [2] => green )

这样,我们就实现了PHP数组随机的效果。
 

附注:

如果只需要一个随机值,我们用array_rand()可实现更简练的代码。
<?php
    $a=array("red","green","blue","yellow","brown","black");
    echo $a[array_rand($a)];
?>
这里输出的就是一个随机值
yellow
或是其他。

本文地址:https://xzo.com.cn/develop/php/821.html

有帮助,很赞!

信息来源:下载鸥
信息标签
导出教程 下载word版教程
发表评论 共有条评论
关于PHP

PHP是一种服务器端、跨平台、html嵌入式的脚本语言,其功能十分强大、入门简单。在过去,民间一直有说法称“PHP是最好的编程语言”,是PHP开发者对自身所使用语言的肯定。

PHP曾是最主流的网站web开发语言之一,现在也依然十分流行。

推荐PHP开发教程
PHP怎样用正则判断一个链接是内链还是外链?
PHP怎样用正则判断一个链接是内链还是外链?

在日常文章的发表过程中,由于需要引入一些外部链接达到更好的效果与体验。但...

26 1211
php怎样开发一个访问密码的界面防止资源被爬取?
php怎样开发一个访问密码的界面防止资源被爬取?

互联网上每天都有很多爬虫到处爬取内容,你可能不知道他们是干嘛的,但其中肯定...

1 297
PHP怎样实现从数组随机取值的效果?
PHP怎样实现从数组随机取值的效果?

在开发过程中,我们很多时候会接到猜你喜欢的随机展示效果。这个随机,用php取...

1 244
怎样在每次发起请求时重置session_id?
怎样在每次发起请求时重置session_id?

在一些开发场景中,我们需要在每次发起请求后更新重置session_id以同步用户数...

3 295
PHP函数switch()介绍
PHP函数switch()介绍

通俗的说,现在有结果A B C D E,每个结果代表不同的意义,此时我们可以用if else...

0 305
PHP的for循环为什么只执行了一次就停止了?
PHP的for循环为什么只执行了一次就停止了?

今天有朋友咨询鸥哥,说php写的for循环本来至少要循环9次,但却只执行了一次就...

1 301
怎样用php批量删除文件或者文件夹?
怎样用php批量删除文件或者文件夹?

在网站建成后的维护与优化阶段,我们会面临无用栏目/数据处理的问题。量小的...

0 276
PHP基础函数介绍:PHP_EOL
PHP基础函数介绍:PHP_EOL

PHP_EOL是一个相当好用的函数,可自动适配多种换行格式,在实际的应用中体验非...

0 385
随机PHP开发教程
php多维数组foreach循环
php多维数组foreach循环

多维数组在实际开发中比较常见,要foreach循环也很简单。...

0 319
php函数介绍之危险的include() - 一句话代码威胁网站安全
php函数介绍之危险的include() - 一句话代码威胁网站安全

include是一个使用比较频繁的函数,通过使用include,我们可以实现快速获取模板...

1 257
php简单的数组介绍与应用
php简单的数组介绍与应用

数组在实际开发过程中运用非常频繁,通过合理运用数组,我们可以顺利实现各种数...

1 261
php函数介绍之htmlspecialchars() 函数
php函数介绍之htmlspecialchars() 函数

htmlspecialchars()函数的作用在于将html标签转化为实体。释义很绕口,我们可...

1 278
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?

页面提交post请求后被宝塔防火墙拦截,查看日志显示错误:参数值长度超过20w已...

1 425
当缓存文件大于4KB,不能用cookie时的替代方案就是session
当缓存文件大于4KB,不能用cookie时的替代方案就是session

鸥哥最近在开发一个项目,出于对用户隐私的保护,数据一概不能存储到数据表,而是...

1 339
ajax发起session请求发现session无效了怎么办?
ajax发起session请求发现session无效了怎么办?

今天遇到这样一个问题:php启用了session,经过测试也发现session生效了。但在a...

1 340
PHP排序函数sort、asort、rsort、krsort、ksort区别与用法详解
PHP排序函数sort、asort、rsort、krsort、ksort区别与用法详解

在php中自带了大量了数组排序函数,使用起来非常简单,下面我们一一来介绍一下...

3 337
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入