php 数组随机取值的简单实例


Posted in PHP onMay 23, 2016

array_rand() 在你想从数组中取出一个或多个随机的单元时相当有用。它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1。

array_rand -- 从数组中随机取出一个或多个单元

mixed array_rand ( array input [, int num_req])

array_rand() 在你想从数组中取出一个或多个随机的单元时相当有用。它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1。

如果你只取出一个,array_rand() 返回一个随机单元的键名,否则就返回一个包含随机键名的数组。这样你就可以随机从数组中取出键名和值。

不要忘记调用 srand() 来撒下随机数发生器的种子。

例子 1. array_rand() 例子

srand ((float) microtime() * 10000000); 
$input = array ("Neo", "Morpheus", "Trinity", "Cypher", "Tank"); 
$rand_keys = array_rand ($input, 2); 
print $input[$rand_keys[0]]."\n"; 
print $input[$rand_keys[1]]."\n";

我们曾经访问过这样的网站,每次刷新banner都随机的变化,在这篇文章中,我们将给大家介绍用PHP来实现这个功能。

步骤

程序实现的原理是:调用一个数组,每个图象对应一个数组中的元素,然后我们设置随机数,只要随机得到一个数据就可以显示一副图象了。

第一个步是我们来产生一个随机数。每次刷新时我们都得到不同的随机数,具体代码为:

srand((float) microtime() * 10000000);

之后我们设置一个数组为image,然后再设置5个数组元素,代码如下:

$image[1]='/location/of/image1.jpg'; 
$image[2]='/location/of/image2.jpg'; 
$image[3]='/location/of/image3.jpg'; 
$image[4]='/location/of/image4.jpg'; 
$image[5]='/location/of/image5.jpg';

下面的代码实现的功能是从数组中随机选择一个元素:

$rn = array_rand($image);

然后我们来显示一个随机的图片:

echo '<img src="'.$image[$rn].'">';

把上面的代码组合起来就可以了。

srand((float) microtime() * 10000000); 
$image[1]='/location/of/image1.jpg'; 
$image[2]='/location/of/image2.jpg'; 
$image[3]='/location/of/image3.jpg'; 
$image[4]='/location/of/image4.jpg'; 
$image[5]='/location/of/image5.jpg'; 
$rn = array_rand($image); 
echo '<img src="'.$image[$rn].'">';

以上的代码是我们随机显示图片的代码,如果我们想使每个图片再加上各自的连接地址那么我们把上述的代码稍微改动下就可以了!把上述的数组改为二维数组:

$image[1]['pic']='/location/of/image1.jpg'; 
$image[1]['link']='/location/of/link1.php';

相应的显示代码为:

echo '<a href="'.$image[$rn]['link'].'">'; 
echo '<img src="'.$image[$rn]['pic'].'">';

那么我们就可以完成我们标题的功能了,随机显示图片并且连接到不同的指定的地址:

srand((float) microtime() * 10000000); 
$image[1]['pic']='/location/of/image1.jpg'; 
$image[1]['link']='/location/of/link1.php'; 
$image[2]['pic']='/location/of/image2.jpg'; 
$image[2]['link']='/location/of/link2.php'; 
$image[3]['pic']='/location/of/image3.jpg'; 
$image[3]['link']='/location/of/link3.php'; 
$image[4]['pic']='/location/of/image4.jpg'; 
$image[4]['link']='/location/of/link4.php'; 
$image[5]['pic']='/location/of/image5.jpg'; 
$image[5]['link']='/location/of/link5.php'; 
$rn = array_rand($image); 
echo '<a href="'.$image[$rn]['link'].'">'; 
echo '<img src="'.$image[$rn]['pic'].'">';

你可以把上面的代码拷到你的网页中去运行了。祝你好运

以上这篇php 数组随机取值的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
介绍几个array库的新函数 php
Dec 29 PHP
PHP中对各种加密算法、Hash算法的速度测试对比代码
Jul 08 PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 PHP
php实现爬取和分析知乎用户数据
Jan 26 PHP
thinkphp多表查询两表有重复相同字段的完美解决方法
Sep 22 PHP
CI框架实现优化文件上传及多文件上传的方法
Jan 04 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 PHP
php+ajax 文件上传代码实例
Mar 18 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 PHP
Docker 安装 PHP并与Nginx的部署实例讲解
Feb 27 PHP
使用php的mail()函数实现发送邮件功能
Jun 03 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
May 23 #PHP
Smarty模板变量调节器用法分析
May 23 #PHP
基于PHP后台的Android新闻浏览客户端
May 23 #PHP
Smarty保留变量用法分析
May 23 #PHP
php parse_str() 函数的定义和用法
May 23 #PHP
Smarty简单生成表单元素的方法示例
May 23 #PHP
深入剖析PHP中printf()函数格式化使用
May 23 #PHP
You might like
PHP array_multisort()函数的使用札记
2011/07/03 PHP
PHP中使用CURL获取页面title例子
2015/01/07 PHP
php实现当前页面点击下载文件的简单方法
2016/09/22 PHP
PHP精确计算功能示例
2016/11/29 PHP
PHP 配置后台登录以及模板引入
2017/01/24 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
2017/03/25 PHP
php实现数字补零的方法总结
2018/09/12 PHP
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
javascript 系统文件夹文件操作及参数介绍
2013/01/08 Javascript
javaScript 动态访问JSon元素示例代码
2013/08/30 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
跟我学习javascript的最新标准ES6
2015/11/20 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
2017/02/27 Javascript
jQuery dateRangePicker插件使用方法详解
2017/07/28 jQuery
Vue from-validate 表单验证的示例代码
2017/09/26 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
基于vue实现web端超大数据量表格的卡顿解决
2019/04/02 Javascript
JS基础之逻辑结构与循环操作示例
2020/01/19 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
[03:17]DOTA2-DPC中国联赛1月29日Recap集锦
2021/03/11 DOTA
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
Python操作MySQL模拟银行转账
2018/03/12 Python
使用python读取.text文件特定行的数据方法
2019/01/28 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
使用已经得到的keras模型识别自己手写的数字方式
2020/06/29 Python
selenium自动化测试入门实战
2020/12/21 Python
使用Python制作一盏 3D 花灯喜迎元宵佳节
2021/02/26 Python
CSS3使用transition属性实现过渡效果
2018/04/18 HTML / CSS
打印机墨盒:123Inkjets
2017/02/16 全球购物
酒店采购员岗位职责
2014/03/14 职场文书
个人工作主要事迹
2014/05/08 职场文书
销售员试用期自我评价
2014/09/15 职场文书
公务员政审材料范文
2014/12/23 职场文书