您当前的位置:首页 > 文章教程 > 计算机与互联网 > 网络编程

5.10压入和弹出数组元素

5.10压入和弹出数组元素

5.10 压入和弹出数组元素

这里所说的压入是指向数组的末尾增加一个元素,而弹出是指将数组中的最后一个元素取出。PHP提供两个函数分别完成这两个功能,这两个函数是array_push()和array_pop()。

5.10.1 压入数组元素

函数array_push()将一个或多个元素压入数组的末尾,其语法如下。


int array_push(array $array, mixed $var)

该函数将参数$array当成一个数据栈,并将传入的参数$var压入$array的末尾。array的长度将根据入栈变量的数目增加,执行正常时,该函数返回数组$array新的单元总数。代码5-19演示了该函数的用法。

代码5-19 使用函数array_push()向数组压入元素5-19.php


     01 <?php
     02 $arr = array(
     03 "Beijing",
     04 "Lodon",
     05 "Rome"
     06 );                                              //
定义数组$arr
     07 
     08 echo "
原数组:";
     09 echo "<pre>";
     10 print_r($arr);                                  //
输出数组的结构
     11 
     12 array_push($arr,"Oslo","Seoul");                //
向数组压入俩元素
     13 echo "<br/>";
     14 echo "<br/>";
     15 
     16 echo "
调用函数array_push()
之后:";
     17 echo "<br/>";
     18 print_r($arr);
     19 ?>

【代码解析】这段代码的执行结果如图5-19所示。从结果可以看出,第2次输出比第1次输出多了两个元素“Oslo”和“Seoul”,这是代码第12行的作用,使用函数array_push()将这两个元素压入数组。

5.10.2 弹出数组元素

函数array_pop()将数组最后一个元素弹出,其语法如下。


mixed array_pop(array $array)

该函数弹出并返回参数$array数组的最后一个单元,并将数组$array的长度减一。如果参数$array为空(或者不是数组),该函数将返回NULL。代码5-20演示了该函数的用法。

说明 使用本函数后会重置数组指针,相当于使用了函数reset()。

代码5-20 使用函数array_pop()弹出数组最后一个元素5-20.php


     01 <?php
     02 $arr = array(
     03 "Beijing",
     04 "Lodon",
     05 "Rome",
     06 "Moscow",
     07 "Singapore"
     08 );                                              //
定义数组$arr
     09 
     10 echo "
原数组:";
     11 echo "<pre>";
     12 print_r($arr);
     13 echo "</pre>";
     14 
     15 $arr_tmp = array_pop($arr);                     //
弹出数组最后一个元素
     16 echo "<br/>";
     17 
     18 echo "<pre>";
     19 echo "pop
出数组的元素是:<b>".$arr_tmp ."</b>";
     20 echo "<br/>";
     21 
     22 echo "
调用函数array_pop()
之后:";
     23 print_r($arr);
     24 ?>

【代码解析】这段代码的执行结果如图5-20所示。从结果可以看出,我们不仅要输出变化后的数组元素,还要输出被弹出数组的元素,所以第15行需要用变量$arr_tmp来获取弹出元素。

图5-19 使用函数array_push()向数组压入元素

图5-20 使用函数array_pop()弹出数组最后一个元素