文档首页> 常见问题> php常用数组函数(二)

php常用数组函数(二)

发布时间:2023-04-14 08:30       

* 堆栈与队列是最常用的二种数据结构,至于什么是堆栈与队列已超出课程要求

* 大家现在只要知道,堆栈与队列可以快速的在数组二端进行元素的添加与删除操作即可

* 数组的堆栈操作:元素的添加与删除只允许在数组的一端进行

* 一、尾部

* 1. array_push(array, value1[,value2...):入栈,返回新数组数量

* 2. array_pop(array):出栈,弹出最后一个元素,数组长度减1

* 二、头部

* 1. array_unshift(array,value1[,value2...):入栈,返回新数组数量

* 2. array_shift(array):出栈,弹出头部第一个元素,数组长度减1

* 数组的队列操作:元素的添加与删除允许在二端进行

* 一、尾部入队,头部出队

* 1. array_push(array, value1[,value2...):入队,返回新数组数量

* 2. array_shift(array):出队,弹出头部第一个元素,数组长度减1

* 二、头部入队,尾部出队

* 1. array_unshift(array,value1[,value2...):入队,返回新数组数量

* 2. array_pop(array):出队,弹出最后一个元素,数组长度减1

* 注意:

* 1. 添加的元素总是以索引元素方式出现,并且可以同时添加多个

* 2. 删除只能一次弹出一个元素

* 3. 增删操作都会引起数组指针的重置操作reset()

echo '<pre>';
$user = ['id'=>5,'name'=>'peter','gender'=>'male','age'=>30];
print_r($user); //查看数组
echo '<hr color="red">';

//第一、模拟堆栈操作:元素增删仅允许在一端进行

//1. array_push(array, value1[,value2...):尾部入栈,返回新数组数量

//2. array_pop(array):尾部出栈,弹出最后一个元素,数组长度减1

echo array_pop($user),'<br>';
print_r($user); //查看新成的数组

//再从尾部弹出一个元素,已经恢复到原始状态了

echo array_pop($user),'<br>';
print_r($user); //查看新成的数组

//3. array_unshift(array,value1[,value2...):头部入栈,返回新数组数量

//4. array_shift(array):头部出栈,弹出头部第一个元素,数组长度减1

echo array_shift($user),'<br>';
print_r($user); //查看新成的数组
echo array_shift($user),'<br>';
print_r($user); //查看新成的数组

//第二: 模拟队列操作: 增删必须在二端进行,不允许在同一端完成

// 1. array_push(array, value1[,value2...):尾部入队,返回新数组数量

// 2. array_shift(array):头部出队,弹出头部第一个元素,数组长度减1

echo array_shift($user),'<br>';  //出队的id=5这个元素,当然返回的只有值5
print_r($user); //查看新成的数组

// 3. array_unshift(array,value1[,value2...):头部入队,返回新数组数量

echo array_unshift($user, '华为','小米'),'<br>';
print_r($user); //查看新成的数组

// 4. array_pop(array):尾部出队,弹出最后一个元素,数组长度减1

echo array_pop($user),'<br>';
print_r($user); //查看新成的数组