您的位置:首页 > 编程语言 > PHP开发

php数组指针如何移动到指定单元?

2016-03-21 11:09 585 查看

php数组指针如何移动到指定单元?

2012-10-17 16:35杨鯤 | 分类:PHP | 浏览726次
现在问题是一个数组近2000个单元,每次移动到哪个单元没有固定。每个单元都需要执行一个方法(需要2秒^_^)。。万一执行到1000个单元停了,下次难道还从第一个单元执行?所以现在就是需要能指定这个数组循环从地1000个开始。而php数组只能移动到第一、最后、上一个、下一个,有没有我不知道的方法移动到指定单元??
我猜想有没有一个函数,比如这个函数名是php123,那我php123($array,1000),他就把$array这个函数指针移动到第1000位???
分享到:2012-10-17 17:31提问者采纳
调用系统函数。
array array_slice (
array $array , int $offset [, int $length [, bool $preserve_keys ]] ) //函数在数组中根据条件取出一段值,并返回。
$array = array_slice($array,1000);         //这个不是引用

或者直接调用
arrayarray_splice
( array &$input , int $offset [, int $length [, array $
replacement ]] )        ////这个是引用

array_splice($array,0,1000);        //不需要 $array = ,它的返回值是被“丢掉”那部分。
array_slice(array[/i],offset[/i],length[/i],preserve[/i])
参数描述
array[/i]必需。规定输入的数组。
offset[/i]必需。数值。规定取出元素的开始位置。如果是正数,则从前往后开始取,如果是负值,从后向前取 offset[/i] 绝对值。
length[/i]可选。数值。规定被返回数组的长度。如果 length[/i] 为正,则返回该数量的元素。如果 length[/i] 为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset[/i] 开始直到 array[/i] 的末端。
preserve[/i]可选。可能的值: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 )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: