<?php
/**
* Created by PhpStorm.
* User: 廖广
* Date: 2019/4/1
* Time: 20:58
*/
//1.不传入回调,array_filter($arr):过滤掉数组中为false的元素
//$arr1=[5,0,'',20,null,88,false,'php'];
//echo '原始数组:<pre>',var_export($arr1,true),'<hr>';
//
//$arr2=array_filter($arr1);
//echo '新数组:<pre>',var_export($arr2,true),'<hr>';
//2.传入回调,会将数组中的每一个值传入到匿名函数中进行处理
//$arr3=['html','css','javascript'];
//$arr4=array_filter($arr3,function ($value){
////如果值等于CSS,就把CSS过滤掉
// return ($value !== 'css');
//});
//echo '原始数组:<pre>',var_export($arr4,true),'<hr>';
//$arr1=['name'=>'admin','email'=>'admin@php'];
//echo '原始数组:<pre>',var_export($arr,true),'<hr>';
//array_walk($arr,function($val,$key){
// echo $key,'::',$val,'<br>';
//});
//echo '<hr>';
//传入第三个自定义参数,实现更强大的功能
//array_walk($arr,function ($val,$key,$c){
// if ($val==$c){
// exit('无权查看管理员的信息');
// }
// else{
// echo $key,'::',$val,'<br>';
// }
//},'admin1');
$arr=[];
//1.堆栈:array_push()入栈,array_pop()出栈
//入栈
//echo '入栈:',array_push($arr,'赵丽颖'),'个元素<br>';
//echo '当前数组:',var_export($arr,true),'<br>';
//echo '入栈:',array_push($arr,'杨雪','迪丽'),'个元素<br>';
//echo '入栈:',array_push($arr,['杨雪','迪丽']),'个元素<br>';
//echo '当前数组:',var_export($arr,true),'<br>';
////出栈
//echo '出栈元素:',var_export(array_pop($arr),true),'<br>';
//echo '出栈元素:',var_export(array_pop($arr),true),'<br>';
//2.队列:array_unshift()入队,array_shift()出队,头部进行增删操作,
//echo '添加了',array_unshift($arr,'郭德纲'),'个元素<hr>';
//echo '添加了',array_unshift($arr,'小崔'),'个元素<hr>';
//echo '添加了',array_unshift($arr,'小刚'),'个元素<hr>';
//echo '当前数组:<pre>',var_export($arr,true),'<hr>';
//echo '被删除的是:',array_shift($arr),'<hr>';
//echo '当前数组:<pre>',var_export($arr,true),'<hr>';
//队列:先进先出
//从尾部进入,从尾部添加
//array_push($arr,'冰冰');
//echo '当前数组:',var_export($arr,true),'<br>';
////从头部出队
//array_shift($arr);
//echo '当前数组:',var_export($arr,true),'<br>';
//数组其实是一张线性表,堆栈是后进先出的线性表,而队列是先进先出的线性表