PHP 数组操作积累记录

PHP中操作数组是最基本最常用的操作,PHP内置了许多方便的函数提供给我们使用,但是官方文档的翻译有时候并不是那么好理解,并且有些函数平时隔段时间不用很多概念会搞混。好记性不如烂笔头,我会慢慢把平时一些用起来的函数在这里记录,并做demo用于理解和参考。

1.数组合并

数组合并原本是一个很简单的东西,但是越是简单的东西越容易忘记,特别是很少使用的时候。。。。

<?php
echo "<PRE>";
$arr1=[1,2,3];
$arr2=[4,5,6];
//1.PHP数组合并函数
$arr3=array_merge($arr1,$arr2);
var_dump($arr3);
//2.直接数组相加 有顺序 重复键取旧值,并没有达到值合并的需求
$arr3=$arr1+$arr2;
var_dump($arr3);
//3.
$arr3=$arr2+$arr1;
var_dump($arr3);

//4.这种给大家理解一下push,是不行的
array_push($arr1,$arr2);
var_dump($arr1);
结果:

1.
array(6) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  [3]=>
  int(4)
  [4]=>
  int(5)
  [5]=>
  int(6)
}
2.
array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
3.
array(3) {
  [0]=>
  int(4)
  [1]=>
  int(5)
  [2]=>
  int(6)
}
4.
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  [3]=>
  array(3) {
    [0]=>
    int(4)
    [1]=>
    int(5)
    [2]=>
    int(6)
  }
}

2.数组去重

<?php
echo "<PRE>";
$arr1=[1,3,3,5,5,6];
//1.PHP自带去重函数
$arr2=array_unique($arr1);
var_dump($arr2);

/**
 * 2.取巧方法,据说速度更快
 * array_flip 是将【键和值】对换,当【键的值】相同时后面的值会覆盖前面的值,这一点是和array_unique结果不同的
 * 利用这种特性,翻转两次进行去重
 */
$arr2=array_flip(array_flip($arr1));
var_dump($arr2);
结果:(注意结果不同处)

1.
array(4) {
  [0]=>
  int(1)
  [1]=>
  int(3)
  [3]=>
  int(5)
  [5]=>
  int(6)
}
2.
array(4) {
  [0]=>
  int(1)
  [2]=>
  int(3)
  [4]=>
  int(5)
  [5]=>
  int(6)
}




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值