php 利用array_slice函数获取随机数组或前几条数据


Posted in PHP onSeptember 30, 2015

先给大家说下基本语法:

array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] )

array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。 

如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。 

如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。 

注意 array_slice() 默认将重置数组的键。自 PHP 5.0.2 起,可以通过将 preserve_keys 设为 TRUE 来改变此行为。

$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, );  //返回下标开始的数组 returns "c", "d", and "e"
$output = array_slice($input, -, ); // returns "d"
$output = array_slice($input, , ); // returns "a", "b", and "c"
// note the differences in the array keys
print_r(array_slice($input, , -));
print_r(array_slice($input, , -, true));

需要返回随机几条数据的话,可以先用shuffle($input);打乱原始数组,再用array_slice获取

PS:PHP array_slice() 函数

定义和用法

array_slice() 函数在数组中根据条件取出一段值,并返回。

注释:如果数组有字符串键,所返回的数组将保留键名。(参见例子 4)

语法

array_slice(array,offset,length,preserve)

 

参数 描述
array 必需。规定输入的数组。
offset 必需。数值。规定取出元素的开始位置。 如果是正数,则从前往后开始取,如果是负值,从后向前取 offset 绝对值。
length 可选。数值。规定被返回数组的长度。 如果 length 为正,则返回该数量的元素。 如果 length 为负,则序列将终止在距离数组末端这么远的地方。 如果省略,则序列将从 offset 开始直到 array 的末端。
preserve 可选。可能的值: ·         true - 保留键 ·         false - 默认 - 重置键

例子 1

<?php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2));
?>

输出:

Array ( [0] => Cat [1] => Horse )

例子 2

带有负的 offset 参数:

<?php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,-2,1));
?>

输出:

Array ( [0] => Horse )

例子 3

preserve 参数设置为 true:

<?php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2,true));
?>

输出:

Array ( [1] => Cat [2] => Horse )

例子 4

带有字符串键:

<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse","d"=>"Bird");
print_r(array_slice($a,1,2));
?>

输出:

Array ( [b] => Cat [c] => Horse )

以上就是本文给大家介绍的php 利用array_slice函数获取数组随机或前几条数据,希望大家喜欢。

PHP 相关文章推荐
使用sockets:从新闻组中获取文章(二)
Oct 09 PHP
在PWS上安装PHP4.0正式版
Oct 09 PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
Oct 22 PHP
php将12小时制转换成24小时制的方法
Mar 31 PHP
如何使用微信公众平台开发模式实现多客服
Jan 06 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
Jan 12 PHP
实例详解PHP中html word 互转的方法
Jan 28 PHP
Yii2简单实现多语言配置的方法
Jul 23 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
Apr 03 PHP
详解PHP中mb_strpos的使用
Feb 04 PHP
PHP实现微信提现功能
Sep 30 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
Sep 30 #PHP
PHP表单提交后引号前自动加反斜杠的原因及三种办法关闭php魔术引号
Sep 30 #PHP
Session 失效的原因汇总及解决丢失办法
Sep 30 #PHP
解决php表单重复提交实现方法
Sep 29 #PHP
php正则匹配文章中的远程图片地址并下载图片至本地
Sep 29 #PHP
php猜单词游戏
Sep 29 #PHP
PHP代码优化技巧小结
Sep 29 #PHP
You might like
php 学习资料零碎东西
2010/12/04 PHP
PHP经典算法集锦【经典收藏】
2016/09/14 PHP
treepanel动态加载数据实现代码
2012/12/15 Javascript
Javascript中判断变量是数组还是对象(array还是object)
2013/08/14 Javascript
js获取指定的cookie的具体实现
2014/02/20 Javascript
我的Node.js学习之路(一)
2014/07/06 Javascript
js实现的tab标签切换效果代码分享
2015/08/25 Javascript
js+css实现的圆角边框TAB选项卡滑动门代码分享(2款)
2015/08/26 Javascript
jQuery图片前后对比插件beforeAfter用法示例【附demo源码下载】
2016/09/20 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
原生js轮播特效
2017/05/18 Javascript
Angular实现点击按钮后在上方显示输入内容的方法
2017/12/27 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
JavaScript函数apply()和call()用法与异同分析
2018/08/10 Javascript
微信小程序实现动态列表项的顺序加载动画
2019/07/25 Javascript
Vue实现将数据库中带html标签的内容输出(原始HTML(Raw HTML))
2019/10/28 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
python采用django框架实现支付宝即时到帐接口
2016/05/17 Python
Python的mysql数据库的更新如何实现
2017/07/31 Python
Python实现自动为照片添加日期并分类的方法
2017/09/30 Python
Python实现PS图像调整之对比度调整功能示例
2018/01/26 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
python 实现矩阵上下/左右翻转,转置的示例
2019/01/23 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
Python爬虫学习之获取指定网页源码
2019/07/30 Python
python同时替换多个字符串方法示例
2019/09/17 Python
django框架auth模块用法实例详解
2019/12/10 Python
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
adidas官方旗舰店:德国运动用品制造商
2017/11/25 全球购物
Timberland俄罗斯官方网上商店:全球领先的户外品牌
2020/03/15 全球购物
三年大学生活自我鉴定
2014/01/21 职场文书
餐厅销售主管职责范本
2014/02/19 职场文书
年级组长自我鉴定
2014/02/22 职场文书
乡镇2014法制宣传日活动总结
2014/11/01 职场文书