php 数组 指针,PHP数组指针操作

日常开发过程中,接触最多的莫过于是数组了,但是数组的操作我们一般都是用来做读写的,很少操作到有关游标(指针),但是再实际的时用中,如果利用了游标,我们的开发速度及效率会大大的提高。

PHP中有关数组指针的函数

移动指针的函数

next

将数组中的内部指针向前移动一位

mixed next ( array &$array )

返回数组内部指针指向的下一个单元的值,或当没有更多单元时返回 FALSE。

prev

将数组的内部指针倒回一位

mixed prev ( array &$array )

返回数组内部指针指向的前一个单元的值,或当没有更多单元时返回 FALSE。

reset

将数组的内部指针指向第一个单元

mixed reset ( array &$array )

返回数组第一个单元的值,如果数组为空则返回 FALSE。

end

将数组的内部指针指向最后一个单元

mixed end ( array &$array )

返回最后一个元素的值,或者如果是空数组则返回 FALSE。

获取当前指针信息的函数

key

从关联数组中取得键名

mixed key ( array $array )

返回数组中当前单元的键名

key() 函数返回数组中内部指针指向的当前单元的键名。

但它不会移动指针。

如果内部指针超过了元素列表尾部,或者数组是空的,key() 会返回 NULL。

current (pos)

返回数组中的当前单元

mixed current ( array &$array )

current() 函数返回当前被内部指针指向的数组单元的值,并不移动指针。

如果内部指针指向超出了单元列表的末端,current() 返回 FALSE。

其他和指针相关的函数

each

返回数组中当前的键/值对并将数组指针向前移动一步

array each ( array &$array )

返回 array 数组中当前指针位置的键/值对并向前移动数组指针。

键值对被返回为四个单元的数组,键名为0,1,key和 value。

单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。

list

把数组中的值赋给一组变量

array list ( mixed $var1 [, mixed $... ] )

extract

从数组中将变量导入到当前的符号表

int extract ( array &$array [, int $flags = EXTR_OVERWRITE [, string $prefix = NULL ]] )

返回成功导入到符号表中的变量数目。

compact

建立一个数组,包括变量名和它们的值

array compact ( mixed $varname1 [, mixed $... ] )

返回输出的数组,包含了添加的所有变量。

常用举例

$foo = array("Robert" => "Bob", "Seppo" => "Sepi");

$bar = each($foo);

print_r($bar);

echo '



';

// ------------------------------------------

$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');

reset($fruit);

while (list($key, $val) = each($fruit)) {

echo "$key => $val" . '
';

}

echo '



';

// ------------------------------------------

$foo = array(2 => 'a', 'foo' => 'b', 0 => 'c');

$foo[1] = 'd';

list($x, $y, $z) = $foo;

var_dump($foo, $x, $y, $z);

echo '



';

// ------------------------------------------

$size = "large";

$var_array = array("color" => "blue",

"size" => "medium",

"shape" => "sphere");

extract($var_array, EXTR_PREFIX_SAME, "wddx");

echo "$color, $size, $shape, $wddx_size";

echo '



';

// ------------------------------------------

$city = "San Francisco";

$state = "CA";

$event = "SIGGRAPH";

$location_vars = array("city", "state");

$result = compact("event", "nothing_here", $location_vars);

print_r($result);

参考资料

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值