程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php 利用array_slice函數獲取隨機數組或前幾條數據

php 利用array_slice函數獲取隨機數組或前幾條數據

編輯:PHP綜合

先給大家說下基本語法:

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函數獲取數組隨機或前幾條數據,希望大家喜歡。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved