标签:
1.in_array
看代码
<?php $arr = [1,2,3]; if(in_array(‘1nihao‘, $arr)){ echo ‘yes‘; }else{ echo ‘no‘; }
出乎意料,结果是yes,why?
查看php的官方文档 in_array
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
原来还有第三个参数,将第三个参数设置为true的时候,会要求数据类型一致。 默认是false,上面的案例将字符串‘1nihao‘强制转换成了1,检测出了错误的结果。
综上,以后检测的时候要添加最后的参数true.
2.array_filter
function odd($var) { // returns whether the input integer is odd return($var & 1); } function even($var) { // returns whether the input integer is even return(!($var & 1)); } $array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5); $array2 = array(6, 7, 8, 9, 10, 11, 12); echo "Odd :\n"; print_r(array_filter($array1, "odd")); echo "Even:\n"; print_r(array_filter($array2, "even"));
array_filter — 用回调函数过滤数组中的单元
如果没有提供 callback
函数, 将删除 input
中所有等值为 FALSE
的条目
标签:
原文地址:http://www.cnblogs.com/skytree8/p/5613466.html