欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php数组与数据栈相关函数

程序员文章站 2023-10-28 22:16:16
php数组可以用栈的角度来操作,这其中包含了如下函数,array_pop(),array_push,array_shift(),array_unshift()。 array_pop()函数 将数组的最后一个元素移出,也就是出栈; 函数的参数只有一个就是欲操作的数组,这里是引用传值,会改变欲操作的数组 ......

php数组可以用栈的角度来操作,这其中包含了如下函数,array_pop(),array_push,array_shift(),array_unshift()。

array_pop()函数

将数组的最后一个元素移出,也就是出栈;

函数的参数只有一个就是欲操作的数组,这里是引用传值,会改变欲操作的数组;

函数返回出栈那个元素。

 1 $arr = [1, 2, 3, 4];
 2 array_pop( $arr );
 3 var_dump( $arr );
 4 // array(3) {
 5 //     [0] =>
 6 //     int(1)
 7 //     [1] =>
 8 //     int(2)
 9 //     [2] =>
10 //     int(3)
11 //   }

array_push()函数

与array_pop函数执行相反的操作,从数组的末尾添加一个或多个元素,也就是入栈;

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

函数参数第一个是目标数组(引用传值),接下来就是欲要入栈的值;

函数返回入栈数组的个数。

 1 $arr = [1, 2, 3, 4];
 2 var_dump( array_push( $arr, 5, 6 ) );
 3 var_dump( $arr );
 4 // int(6)
 5 // array(6) {
 6 //     [0] =>
 7 //     int(1)
 8 //     [1] =>
 9 //     int(2)
10 //     [2] =>
11 //     int(3)
12 //     [3] =>
13 //     int(4)
14 //     [4] =>
15 //     int(5)
16 //     [5] =>
17 //     int(6)
18 //   }

array_shift()函数

移出数组的第一个元素,数组的数字键都会从零开始重新计数,非数字键不会;

函数的参数只有一个,就是与操作的数组,引用传值。

函数会返回移出的那个元素,如果没有就是null。

 1 $arr = [1, 2, 3, 4];
 2 var_dump( array_shift( $arr ) );
 3 var_dump( $arr );
 4 // int(1)
 5 // array(3) {
 6 //     [0] =>
 7 //     int(2)
 8 //     [1] =>
 9 //     int(3)
10 //     [2] =>
11 //     int(4)
12 //   }

array_unshift()函数

从数组的开头插入一个或多个值(传值的顺序就是数组中新插入元素的顺序);

1 array_unshift ( array &$array [, mixed $... ] ) : int

插完后,数组的数字键都会从零开始重新计数,非数字键不会;

函数会返回插入完成后数组的新长度。

 1 $arr = [1, 2, 3, 4];
 2 var_dump( array_unshift( $arr, -2, -1, 0 ) );
 3 var_dump( $arr );
 4 // int(7)
 5 // array(7) {
 6 //     [0] =>
 7 //     int(-2)
 8 //     [1] =>
 9 //     int(-1)
10 //     [2] =>
11 //     int(0)
12 //     [3] =>
13 //     int(1)
14 //     [4] =>
15 //     int(2)
16 //     [5] =>
17 //     int(3)
18 //     [6] =>
19 //     int(4)
20 //   }