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

WBOY
リリース: 2016-06-07 17:11:22
オリジナル
798 人が閲覧しました

先给大家说下基本语法:

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

<&#63;php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2));
&#63;>
ログイン後にコピー

输出:

复制代码 代码如下:

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

例子 2

带有负的 offset 参数:

<&#63;php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,-2,1));
&#63;>
ログイン後にコピー

输出:

复制代码 代码如下:

Array ( [0] => Horse )

例子 3

preserve 参数设置为 true:

<&#63;php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2,true));
&#63;>
ログイン後にコピー

输出:

复制代码 代码如下:

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

例子 4

带有字符串键:

<&#63;php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse","d"=>"Bird");
print_r(array_slice($a,1,2));
&#63;>
ログイン後にコピー

输出:

复制代码 代码如下:

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

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート