php数组指针函数功能及用法示例

本文实例讲述了php数组指针函数功能及用法。分享给大家供大家参考,具体如下:

数组指针函数有reset(),prev(),current(),next(),end(),key(),each()

其中reset(),prev(),current(),next(),end(),都是只与数组的值有关的函数,key()只与数组键,有关的函数,each()可以获得数组的值和键

reset()函数,参数是一个数组,引用传值,将一个数组的内部指针重置到首位,也就是数组的第一个元素所在的位置,然后返回第一个元素的值,在数组为空的情况下返回false

  1. $arr = [ 1, 2 ];
  2. var_dump( reset( $arr ) );
  3. $arr = [ ];
  4. var_dump( reset( $arr ) );
  5. // int(1)
  6. // bool(false)

end()函数,参数是一个数组,引用传值,将一个数组的内部指针移动到数组的最后一个元素所在的位置,然后返回最后一个元素的值,在数组为空的情况下返回false

  1. $arr = [ 1, 2 ];
  2. var_dump( end( $arr ) );
  3. $arr = [ ];
  4. var_dump( end( $arr ) );
  5. // int(2)
  6. // bool(false)

current()函数,参数是一个数组,引用传值,返回当前数组指针所指向的值,指针移动超出了数组的末尾,返回false,在数组为空的情况下返回false

数组的指针默认在数组的第一位

  1. $arr = [ 1, 2 ];
  2. var_dump( current( $arr ) );
  3. $arr = [ ];
  4. var_dump( current( $arr ) );
  5. // int(1)
  6. // bool(false)

next()函数,参数是一个数组,引用传值,移动数组指针到下一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false

  1. $arr = [ 1, 2 ];
  2. var_dump( next( $arr ) );
  3. $arr = [ ];
  4. var_dump( next( $arr ) );
  5. // int(2)
  6. // bool(false)

prev()函数,参数是一个数组,引用传值,移动数组指针到上一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false

  1. $arr = [ 1, 2 ];
  2. var_dump( prev( $arr ) );
  3. $arr = [ ];
  4. var_dump( prev( $arr ) );
  5. // int(2)
  6. // bool(false)

key()函数,参数是一个数组,引用传值,返回当前指针所指向的元素的键,当指针所指的那一位没有元素返回null,空数组返回null

  1. $arr = [ 1, 2 ];
  2. prev( $arr );
  3. var_dump( key( $arr ) );
  4. $arr = [ ];
  5. var_dump( key( $arr ) );
  6. // int(2)
  7. // bool(false)

each()函数,参数是一个数组,引用传值,返回当前指针所指的元素的值和键,并且移动指针到下一位

php7.2之后极度不鼓励使用这个函数

Warning

This function has been DEPRECATED as of PHP 7.2.0. Relying on this function is highly discouraged