php array_slice 取出数组中的一段序列实例

yipeiwu_com6年前PHP代码库

php array_slice 函数在数组中根据条件取出一段值,并返回。如果数组有字符串键,所返回的数组将保留键名。本文章通过实例向大家讲解array_slice 函数的使用方法。

php array_slice — 从数组中取出一段

array_slice 函数基本语法:

array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]] )

array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。

参数介绍

参数 描述
array 必需。输入的数组。
soffset

必需。数值。规定取出元素的开始位置。 0 = 第一个元素。

如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。

length

可选。数值。规定被返回数组的长度。

如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。

preserve_keys

可选。规定函数是保留键名还是重置键名。可能的值:

  • true - 保留键名
  • false - 默认。重置键名

默认会重新排序并重置数组的数字索引。你可以通过将 preserve_keys 设为 TRUE 来改变此行为。 

返回值

返回其中一段。

实例:

<?php
$input = array("a", "b", "c", "d", "e");

$output = array_slice($input, 2);  
print_r($output);echo "<br/><br/>";
$output = array_slice($input, -2, 1); 
print_r($output);echo "<br/><br/>";
$output = array_slice($input, 0, 3);  
print_r($output);echo "<br/><br/>";

print_r(array_slice($input, 2, -1));echo "<br/><br/>";
print_r(array_slice($input, 2, -1, true));
?> 

结果:

"; $output = array_slice($input, -2, 1); print_r($output);echo "

"; $output = array_slice($input, 0, 3); print_r($output);echo "

"; print_r(array_slice($input, 2, -1));echo "

"; print_r(array_slice($input, 2, -1, true)); ?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

php 中英文语言转换类代码

起初想到制成XML文档形式,这样操作也起来很容易。只是看到说XML效率不怎样 再者就是不同的模板,可这样也有个小问题,有些词汇比如时间提示是不确定,与可能是minute ,day。也有可...

php 去除html标记--strip_tags与htmlspecialchars的区别详解

strip_tags   去掉 HTML 及 PHP 的标记。  语法: string strip_tags(string str);  传回值: 字串  函式种类: 资料处理  内容说...

PHP面向对象程序设计(OOP)之方法重写(override)操作示例

本文实例讲述了PHP面向对象程序设计(OOP)之方法重写(override)操作。分享给大家供大家参考,具体如下: 因为PHP是弱类型的语言, 所以在方法的参数中本身就可以接收不同类型的...

PHP实现递归无限级分类

PHP实现递归无限级分类

在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。 递归,简单的说...

PHP实现搜索相似图片

感知哈希算法 count < =5 匹配最相似 count > 10 两张不同的图片 var_dump(ImageHash::run(‘./1.png', ‘./psb.jp...