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 相关文章推荐
php curl选项列表(超详细)
Jul 01 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 PHP
php遍历文件夹所有文件子文件夹函数代码
Nov 27 PHP
PHP调用JAVA的WebService简单实例
Mar 11 PHP
php switch语句多个值匹配同一代码块应用示例
Jul 29 PHP
ThinkPHP自定义函数解决模板标签加减运算的方法
Jul 03 PHP
微信公众平台开发之配置与请求
Aug 26 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
Mar 05 PHP
php实用代码片段整理
Nov 12 PHP
php中final关键字用法分析
Dec 07 PHP
Yii2.0中使用js异步删除示例
Mar 10 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
Mar 31 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模板类代码
2008/09/07 PHP
php调用nginx的mod_zip模块打包ZIP文件
2014/06/11 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
PHP 实现base64编码文件上传出现问题详解
2020/09/01 PHP
动态为事件添加js代码示例
2009/02/15 Javascript
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
关于JavaScript的with 语句的使用方法
2011/05/09 Javascript
在jQuery ajax中按钮button和submit的区别分析
2012/10/07 Javascript
运用jQuery定时器的原理实现banner图片切换
2014/10/22 Javascript
JS实现点击按钮后框架内载入不同网页的方法
2015/05/05 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
关于vue的npm run dev和npm run build的区别介绍
2019/01/14 Javascript
浅谈发布订阅模式与观察者模式
2019/04/09 Javascript
vue滚动插件better-scroll使用详解
2019/10/18 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
Python中join函数简单代码示例
2018/01/09 Python
numpy中的delete删除数组整行和整列的实例
2018/05/09 Python
在Python中使用gRPC的方法示例
2018/08/08 Python
python打印n位数“水仙花数”(实例代码)
2019/12/25 Python
pycharm激活码有效到2020年11月底
2020/09/18 Python
用Python绘制漫步图实例讲解
2020/02/26 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
Python实现列表索引批量删除的5种方法
2020/11/16 Python
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
俄语地区最大的中国商品在线购物网站之一:Umka Mall
2019/11/03 全球购物
秋季运动会通讯稿
2014/01/24 职场文书
家长学校实施方案
2014/03/15 职场文书
优秀学生干部先进事迹材料
2014/05/26 职场文书
化学专业自荐信
2014/05/28 职场文书
司法局火灾防控方案
2014/06/05 职场文书
电子信息工程专业自荐书
2014/06/24 职场文书
地心历险记观后感
2015/06/15 职场文书
Python线程池与GIL全局锁实现抽奖小案例
2022/04/13 Python