php array_filter和var_export

官网说明:array_filter — 用回调函数过滤数组中的单元,然后官网的例子,惨不忍睹。不过,不看官网和瞎子没有什么区别。
http://php.net/manual/zh/function.array-filter.php

array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )

看他第三个参数的介绍。

flag决定callback接收的参数形式:
ARRAY_FILTER_USE_KEY - callback接受键名作为的唯一参数
ARRAY_FILTER_USE_BOTH - callback同时接受键名和键值

我是用PHP7来实验的。

可以去这个地址尝试 http://www.shucunwang.com/RunCode/php7/

function hehe($v){
    return preg_match('/[a-z]/',$v);
}

$array1 = array(0=>'ada','xxx'=>'xxx');
var_export(array_filter($array1, 'hehe', ARRAY_FILTER_USE_KEY));

结果:

php array_filter和var_export_第1张图片
我是结果.jpg

然后我把flag改成ARRAY_FILTER_USE_BOTH

php array_filter和var_export_第2张图片
额~.jpg

之后再改成$array1 = array(0=>1111,'xxx'=>'xxx');

php array_filter和var_export_第3张图片
好.jpg

结论:以后在php7的环境下,可以array_filter 写正则过滤某些黑科技的东西。

下面介绍var_export,就是打印。
http://php.net/manual/zh/function.var-export.php
不过它的第二个参数,可以搞出一些很有用的东西。
官网说的:您可以通过将函数的第二个参数设置为 **TRUE
**,从而返回变量的表示。
就是加了 TRUE之后,不输出,可以存到一个变量里面去
举例子:

$array1 = array(0=>1111,'xxx'=>'xxx');
file_put_contents('xxx.php', '

可以新建一个文件,然后用到的时候可以加载里面的数组。
好了,就到这里了。

你可能感兴趣的:(php array_filter和var_export)