博客列表 >php数组元素的回调处理_2018年8月24日

php数组元素的回调处理_2018年8月24日

PHP学习
PHP学习原创
2018年09月11日 21:17:08644浏览

实例

<?php
//array_filter()回调数组中的每个元素,返回结果为true的数组。
$arr = [10,null,'',0,10,20,'小龙女',false,'php','null'];
echo '<pre>';
var_export($arr);
echo '<hr>';
echo var_export(array_filter($arr));
运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:因为array_filter()调用数组里面的值,将是false(假)的不返回出来。所以可以总结出0,false,0,null这几个就是false是假,所以在经过array_filter()处理后,就把真的返回出来。

实例

<?php
//回调处理,通过回调的处理,将里面的php给处理
$arr1 = ['css','javascrip','php','html'];
$arr1 = array_filter($arr1,function ($value) {
  return $value !== 'javascrip';
});
echo '<pre>';
echo var_export($arr1);

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:array_filter(数组变量,回调函数)通过这种使用方法来处理调里面的东西。但是,我对这个回调的一个原理不是很明白,还请老师给讲解一下。

此函数主要是处理数组中的值,对于键没有法处理,下面的函数就是对键也可以进行处理。

实例

<?php
$arr2 = ['name'=>'html','age'=>30,'stulyt'=>98];
echo var_export($arr2,true);
echo '<hr>';
$arr2 = array_walk($arr2, function ($value,$key){
    echo $key,':',$value,'<br>';
});
echo '<pre>';
echo var_export($arr2);
运行实例 »

点击 "运行实例" 按钮查看在线实例

array_wlak(数组变量,回调函数,第三个参数)这个主要是可以针对数组中的键和值都可以操作,比上面的哪个array_filter使用还要强大一些。下面来试一下第三个参数的用法。

实例

<?php
$arr3 = ['name'=>'admin','pass'=>'passwords'];
$arr3 = array_walk($arr3,function ($value,$key,$pass) {
    if ($value == $name) {
        exit('可以查看');
    } else {
        exit('无权查看');
    }
},'admin');
echo $arr3;

运行实例 »

点击 "运行实例" 按钮查看在线实例

array_wlak()第三个参数在下面,不要看上面的哪个$name,主要是将定义的$name是等于admin如果来跟$value来判断的。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议