我们有很多操作数组的元素,我们这一节先讲一些。在6.3里面我们会总结更多的数组常用函数。深圳dd马达

下面的几个主要是移动数组指针和压入弹出数组元素的和个函数。

函数 功能
array_shift 弹出数组中的第一个元素
array_unshift 在数组的开始处压入元素
array_push 向数组的末尾处压入元素
array_pop 弹出数组末尾的最后一个元素
current 读出指针当前位置的值
key 读出指针当前位置的键
next 指针向下移
prev 向上移
reset 指针到开始处
end 指针到结束处

array_shift

mixed array_shift ( array &$array )

功能:弹出数组中的第一个元素

<?php
$mingren = array("邓超", "黄晓明", "宁泽涛", "钟汉良");
$dc = array_shift($mingren); echo $dc .'<br />'; print_r($mingren);
?>

执行结果:

结论:

1.将第一个数组元素弹出,改变了原数组的结果

2.弹出的值赋值给了$dc

array_unshift

int array_unshift ( array &$数组 , mixed $值1 [, mixed $... ] )

功能:向指数组的开始处压入一个或多个元素,返回的是总个数。

<?php
$mingren = array("邓超", "黄晓明");
$dc = array_unshift($mingren , "宁泽涛", "钟汉良"); echo $dc .'<br />'; print_r($mingren);
?>

执行结果如下:

array_pop

mixed array_pop ( array &$array )

功能:弹出数组末尾的一个元素

<?php
$mingren = array("邓超", "黄晓明", "宁泽涛", "钟汉良");
$dc = array_pop($mingren); echo $dc .'<br />'; print_r($mingren);
?>

执行结果:

array_push

int array_push ( array &$array , mixed $value1 [, mixed $... ] )

功能:向指数组末尾处压入一个或多个元素,返回的是总个数。

<?php
$mingren = array("邓超", "黄晓明");
$dc = array_push($mingren , "宁泽涛", "钟汉良"); echo $dc .'<br />'; print_r($mingren);
?>

执行结果:

current,key,prev,next,reset 功能演示

这几个函数功能已经说的很清楚了。我们通过代码来进行演示:

<?php
$t=array(
   '我们',
   'yy'=>'永远',
   'dbg'=>'需要不断奋进',
   'djn'=>'才能开创未来'
   ); //读取数组的值
echo current($t).'<br />';
//读取数组的键
echo key($t).'<br />'; //向后移动一下
next($t); //再读值和键
echo current($t).'<br />'; echo key($t).'<br />'; //向后移动一下
next($t);
echo current($t).'<br />'; echo key($t).'<br />'; //向前移动一下
prev($t);
echo current($t).'<br />';
echo key($t).'<br />'; //移到末尾
end($t);
echo current($t).'<br />';
echo key($t).'<br />'; //移至开始处
reset($t);
echo current($t).'<br />'; echo key($t).'<br />'; //销毁数组
unset($t);
var_dump($t);
?>

最新文章

  1. c/c++连接mysql数据库
  2. Java-集合练习5
  3. func_num_args, func_get_arg, func_get-args 的区别与用法
  4. js判断浏览器种类以及版本号(从jquery1.8中抠出来的)
  5. Redis系列-存储篇sorted set主要操作函数小结
  6. KEEPALIVED 检测RS原理
  7. win7 进程kill
  8. Android初学:联系创建Activity
  9. 十进制二进制之间的转化 PHP算法
  10. TraceView简单使用方法
  11. linux时间校准设置,解决与本地时间不一致问题
  12. C# Finalize和Dispose的区别
  13. [Solution] 885. Spiral Matrix Ⅲ
  14. 移动端自动化测试-WTF Appium?
  15. python下载youtube视频
  16. P3159 [CQOI2012]交换棋子
  17. 【Alpha】团队课程展示
  18. How to Check if Linux (Ubuntu, Fedora Redhat, CentOS) is 32-bit or 64-bit
  19. 1、AutoCAD ObjectARX开发版本对照表
  20. appium+python自动化59-appium命令行参数

热门文章

  1. Gradle 翻译 tips and recipes 使用技巧 MD
  2. Implicit super constructor Array() is undefined for default constructor. Must define an explicit constructor
  3. 换个语言学一下 Golang (7)——使用函数
  4. mysql优化 ON DUPLICATE KEY UPDATE
  5. 手写MQ框架(二)-服务端实现
  6. dede自定义内容模型下,列表只显示10条的问题及解决方法
  7. 日志 logback-spring.xml配置
  8. day 06 预科
  9. golang的channel实现
  10. Eclipse上Maven环境配置使用