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 相关文章推荐
PHP strtotime函数详解
Dec 18 PHP
php读取mysql乱码,用set names XXX解决的原理分享
Dec 29 PHP
PHP5常用函数列表(分享)
Jun 07 PHP
浅析51个PHP处理字符串的函数
Aug 02 PHP
php var_export与var_dump 输出的不同
Aug 09 PHP
完美的2个php检测字符串是否是utf-8编码函数分享
Jul 28 PHP
如何使用GDB调试PHP程序
Dec 08 PHP
关于php几种字符串连接的效率比较(详解)
Feb 22 PHP
PHP房贷计算器实例代码,等额本息,等额本金
Apr 01 PHP
PHP实践教程之过滤、验证、转义与密码详解
Jul 24 PHP
浅析PHP数据导出知识点
Feb 17 PHP
php中的explode()函数实例介绍
Jan 18 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 数组和字符串互相转换实现方法
2013/03/26 PHP
基于PHP选项与信息函数的使用详解
2013/05/10 PHP
PHP批量检测并去除文件BOM头代码实例
2014/05/08 PHP
PHP安装memcache扩展的步骤讲解
2019/02/14 PHP
PHP迭代器和生成器用法实例分析
2019/09/28 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
javascript 当前日期转化为中文的实现代码
2010/05/13 Javascript
在IE浏览器中resize事件执行多次的解决方法
2011/07/12 Javascript
JS继承--原型链继承和类式继承
2013/04/08 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
使用原生js实现页面蒙灰(mask)效果示例代码
2014/06/20 Javascript
js进行表单验证实例分析
2015/02/10 Javascript
JavaScript判断浏览器类型的方法
2015/02/10 Javascript
JS实现超简单的鼠标拖动效果
2015/11/02 Javascript
JavaScript优化专题之Loading and Execution加载和运行
2016/01/20 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
详解Matlab中 sort 函数用法
2016/03/20 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
jQuery实现计算器功能
2020/10/19 jQuery
python实现爬取千万淘宝商品的方法
2015/06/30 Python
简单讲解Python编程中namedtuple类的用法
2016/06/21 Python
Python编程scoketServer实现多线程同步实例代码
2018/01/29 Python
Django中数据库的数据关系:一对一,一对多,多对多
2018/10/21 Python
用css3实现转换过渡和动画效果
2020/03/13 HTML / CSS
"引用"与多态的关系
2013/02/01 面试题
高中生的学习总结自我鉴定
2013/10/26 职场文书
财产保全担保书范文
2014/04/01 职场文书
大学生评语大全
2014/04/18 职场文书
文秘个人求职信范文
2014/04/22 职场文书
2014年信息技术工作总结
2014/12/16 职场文书
淮阳太昊陵导游词
2015/02/10 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
某某幼儿园的教育教学管理调研分析报告
2019/11/29 职场文书
python turtle绘图
2022/05/04 Python
Linux中一对多配置日志服务器的详细步骤
2022/07/23 Servers