php printhr函数,PHP常用函数(一):数组常用函数

1、list()

list() 和 array() 一样,不是一个函数,而是一个语言结构,作用是为一组变量赋值。

PHP手册中的介绍

20180910092545303890.png

使用详情

$info = [‘this is a‘,‘this is b‘,‘this is c‘];list($a,$b,$c) = $info;print<<

$b

$c


EOT;

运行结果

20180910092545393734.png

2、each()

20180910092546929867.png

//实例代码 遍历$arr

<?php $arr = [‘a‘=>‘this is a‘,‘b‘=>‘this is b‘,‘c‘=>‘this is c‘];while($tmp = each($arr))

{echo $tmp[‘key‘].‘:‘.$tmp[‘value‘].‘
‘;

}

运行结果:

20180910092547842953.png

3、数组指针操作

current()

key()

next()

prev()

end()

reset()

2 key(); //读取当前指针指向内容的索引值

3 next(); //将数组中的内部指针指向下一单元

4 prev(); //将数组内部指针倒回一位

5 end(); //将数组内部指针指向最后一个元素

6 reset(); //将目前指针指向第一个索引位置*/

$info =[‘a‘ => ‘this is a‘,

‘b‘ => ‘this is b‘,

‘c‘ => ‘this is c‘,

‘d‘ => ‘this is d‘];echo key($info).‘:‘.current($info).‘
‘;next($info);echo key($info).‘:‘.current($info).‘
‘;end($info);echo key($info).‘:‘.current($info).‘
‘;reset($info);echo key($info).‘:‘.current($info).‘
‘;

运行结果:

20180910092547890804.png

4、键值操作函数

$info =[‘a‘ => ‘apple‘,

‘b‘ => ‘blog‘,

‘c‘ => ‘cat‘,

‘d‘ => ‘dog‘];echo ‘keys:
‘;//输出info数组的所有键

var_dump(array_keys($info));echo ‘
‘;echo ‘values:
‘;//输出info数组的所有值

var_dump(array_values($info));echo ‘
‘;//转换info数组 键值互换

echo ‘flips:
‘;var_dump(array_flip($info));echo ‘
‘;//搜索apple

echo ‘search:
‘;echo ‘apple key is :‘.array_search(‘apple‘,$info);echo ‘
‘;//元素翻转

echo ‘reverse:
‘;var_dump(array_reverse($info));echo ‘
‘;//检查元素

echo ‘in?
‘;echo ‘blog is in $info? ‘.var_dump(in_array(‘blog‘,$info));echo ‘
‘;//检查键

echo ‘key in?
‘;echo ‘b is in $info? ‘.var_dump(array_key_exists(‘b‘,$info));echo ‘
‘;//统计值的出现次数

$info[] = ‘blog‘;$info[] = ‘blog‘;echo ‘value count
‘;var_dump(array_count_values($info));echo ‘
‘;//删除重复的值

echo ‘before unique
‘;var_dump($info);echo ‘
after unique
‘;var_dump(array_unique($info));

运行结果:

20180910092548303890.png

5、回调函数

示例数组:

$info =[‘a‘ => ‘apple‘,

‘b‘ => ‘blog‘,

‘c‘ => ‘cat‘,

‘d‘ => ‘dog‘];

array_filter();

PHP手册参考:

20180910092548506039.png

//array_filter();

//不使用flag

$filter_arr = array_filter($info,function($value){return strlen($value) == 3;

});var_dump($filter_arr);echo ‘
‘;//使用flag

$filter_arr = array_filter($info,function($key){return in_array($key,[‘a‘,‘c‘]);

},ARRAY_FILTER_USE_KEY);var_dump($filter_arr);echo ‘
‘;$filter_arr = array_filter($info,function($value,$key){return in_array($key,[‘a‘,‘c‘]) && $value == ‘apple‘;

},ARRAY_FILTER_USE_BOTH);var_dump($filter_arr);echo ‘
‘;

输出结果:

20180910092548601742.png

array_walk();

PHP手册参考:

20180910092548666195.png

//array_walk();

//不使用 userdata

array_walk($info,function($value,$key){echo "$key:$value ";

});echo "
";//使用 userdata

array_walk($info,function(&$value,$key,$userdata){$value = $userdata.‘-‘.$value;

},‘php‘);var_dump($info);echo "
";

输出结果:

20180910092548740414.png

array_map();

PHP手册参考:

20180910092548798031.png

//array_map();

//单个数组

array_map(function($n){echo "$n ";

},$info);echo "
";//多个数组

$info_2 =[‘e‘ => ‘egg‘,

‘f‘ => ‘filco‘,

‘g‘ => ‘good‘];array_map(function($n1,$n2){echo "1:$n1-2:$n2 ";

},$info,$info_2);echo ‘
‘;

运行结果:

20180910092548943539.png

6、数组分割

array_slice()

PHP手册参考

20180910092549187679.png

array_splice()

PHP手册参考:

20180910092549275570.png

array_chunk()

PHP手册:

20180910092549353695.png

测试代码:

<?php $info =[‘a‘ => ‘apple‘,

‘b‘ => ‘blog‘,

‘c‘ => ‘cat‘,

‘d‘ => ‘dog‘];//array_slice()

echo ‘array_slice:
‘;print_r(array_slice($info,0,3));echo ‘


‘;//array_splice();

echo ‘array_splice:
‘;echo ‘原数组:
‘;print_r($info);echo ‘
‘;//替换掉前两位

$tmp = array_splice($info,0,2,[‘king‘,‘queen‘]);echo ‘替换后的数组:
‘;print_r($info);echo ‘
‘;echo ‘替换掉数组:
‘;print_r($tmp);echo ‘


‘;//恢复原数组

$info =[‘a‘ => ‘apple‘,

‘b‘ => ‘blog‘,

‘c‘ => ‘cat‘,

‘d‘ => ‘dog‘];//array_chunk();

echo ‘array_splice:
‘;echo ‘替换后的数组:
‘;$tmp = array_chunk($info,2);var_dump($tmp);

运行结果:

20180910092549500179.png

7、数组运算

测试代码:

<?php $info =[‘a‘ => ‘apple‘,

‘b‘ => ‘blog‘,

‘c‘ => ‘cat‘,

‘d‘ => ‘dog‘];$info_2 =[‘e‘ => ‘apple‘,

‘f‘ => ‘egg‘,

‘g‘ => ‘java‘,

‘h‘ => ‘cat‘];$info_num = [120,10,1];//array_sum

echo ‘array_sum:
‘;echo array_sum($info_num);echo ‘
‘;echo array_sum($info); //只对元素中的数值进行求和

echo ‘


‘;//array_merge

echo ‘array_merge:
‘;print_r(array_merge($info,$info_2,$info_num));echo ‘


‘;//array_diff - 返回在info中但不在其他arr中的值

echo ‘array_diff:
‘;print_r(array_diff($info,$info_2));echo ‘


‘;//array_intersect - 返回在info中也在在其他arr中的值

echo ‘array_intersect:
‘;print_r(array_intersect($info,$info_2));echo ‘


‘;

运行结果:

20180910092549582211.png

8、数组的栈和队列操作

9、数组的排序操作

10、其他常用函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值