constant
constant — 返回一个常量的值
constant ( string $name
) : mixed 通过 name
返回常量的值。
当你不知道常量名,却需要获取常量的值时,constant() 就很有用了。也就是常量名储存在一个变量里,或者由函数返回常量名。
<?php define("MAXSIZE", 100); echo MAXSIZE.‘<br/>‘; echo constant("MAXSIZE"); // same thing as the previous line interface bar { const test = ‘bar!‘; } class foo { const test = ‘foo!‘; } $const = ‘test‘; var_dump(constant(‘bar::‘. $const)); // string(7) "foobar!" var_dump(constant(‘foo::‘. $const)); // string(7) "foobar!" ?>
结果:100
100string(4) "bar!" string(4) "foo!"
array_walk()
对数组中的每个元素应用用户自定义函数:
语法:array_walk(array,myfunction,parameter...)
定义和用法
array_walk() 函数对数组中的每个元素应用用户自定义函数。在函数中,数组的键名和键值是参数。
注释:您可以通过把用户自定义函数中的第一个参数指定为引用:&$value,来改变数组元素的值(参见实例 2)。
提示:如需操作更深的数组(一个数组中包含另一个数组),请使用 array_walk_recursive() 函数。
<?php function myfunction($value,$key,$p)//存在key和value 还可以多加一个参数 { echo "$key $p $value<br>"; } $a=array("a"=>"red","b"=>"green","c"=>"blue"); array_walk($a,"myfunction","has the value"); ?>
只能带一个参数
array_map()
函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
语法:array_map(myfunction,array1,array2,array3...)
<?php function myfunction($v)//只有value 没有key的 { return($v*$v); } $a=array(1,2,3,4,5); print_r(array_map("myfunction",$a)); ?>
结果
Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )
array_filter()
用回调函数过滤数组中的元素:
array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。
<?php function myfunction($v) { if ($v==="Horse") { return true; } return false; } $a=array(0=>"Dog",1=>"Cat",2=>"Horse"); print_r(array_filter($a,"myfunction")); ?>
结果:
Array ( [2] => Horse )