首頁 > 後端開發 > php教程 > php中array_slice函數的定義與用法

php中array_slice函數的定義與用法

墨辰丷
發布: 2023-03-30 11:12:01
原創
2313 人瀏覽過

這篇文章主要介紹php中array_slice函數的定義與用法,有興趣的朋友參考下,希望對大家有幫助。

先跟大家說下基本語法:

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 Smarty 定界符冲突该如何处理

 PHP中的for循环怎样嵌套

PHP函数重载分析及实例

以上是php中array_slice函數的定義與用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板