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&amp;MYSQL分页原理及实现
Jan 02 PHP
MySQL时间字段究竟使用INT还是DateTime的说明
Feb 27 PHP
php中字符集转换iconv函数使用总结
Oct 11 PHP
php实现高效获取图片尺寸的方法
Dec 12 PHP
ecshop 2.72如何修改后台访问地址
Mar 03 PHP
PHP中的Trait 特性及作用
Apr 03 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
May 19 PHP
深入理解PHP中的empty和isset函数
May 26 PHP
PHP通过加锁实现并发情况下抢码功能
Aug 10 PHP
PHP面向对象学习之parent::关键字
Jan 18 PHP
php-fpm开启状态统计的方法详解
Jun 23 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
Mar 11 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
Zerg剧情介绍
2020/03/14 星际争霸
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
探讨:使用XMLSerialize 序列化与反序列化
2013/06/08 PHP
使用phpstorm和xdebug实现远程调试的方法
2015/12/29 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
jWiard 基于JQuery的强大的向导控件介绍
2011/10/28 Javascript
js滚动条回到顶部的代码
2011/12/06 Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
2015/08/24 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
AngularJS基础 ng-paste 指令简单示例
2016/08/02 Javascript
Bootstrap对话框使用实例讲解
2016/09/24 Javascript
你有必要知道的10个JavaScript难点
2017/07/25 Javascript
详解vue2 $watch要注意的问题
2017/09/08 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
关于单文件组件.vue的使用
2018/09/20 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
小程序指纹验证的实现代码
2018/12/04 Javascript
一些你可能不熟悉的JS知识点总结
2019/03/15 Javascript
JavaScript中交换值的10种方法总结
2020/08/18 Javascript
python基础教程之自定义函数介绍
2014/08/29 Python
详解Python中的join()函数的用法
2015/04/07 Python
python单元测试unittest实例详解
2015/05/11 Python
Python 正则表达式的高级用法
2016/12/04 Python
Python2和Python3中print的用法示例总结
2017/10/25 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
python合并已经存在的sheet数据到新sheet的方法
2018/12/11 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
2019/01/04 Python
pycharm 中mark directory as exclude的用法详解
2020/02/14 Python
MCM英国官网:奢侈皮具制品
2017/04/18 全球购物
马来西亚综合购物网站:Lazada马来西亚
2018/06/05 全球购物
数控专业应届生求职信
2013/11/27 职场文书
表彰先进集体通报
2014/01/12 职场文书
2016五一劳动节慰问信
2015/11/30 职场文书