开发过程中经常会使用到数组函数,故特地总结出来,自己熟悉,同时供大家参考!(实例部分会抽空尽快完成)

一、目录

  1. array_merge(); 合并数组
  2. array_keys();
  3. array_filter();
  4. in_array();
  5. array_shift();
  6. array_map();
  7. array_diff();
  8. array_values();
  9. array_unique();
  10. array_flip()
  11. array_multisort()
  12. array_column()
  13. array_intersect()
  14. array_key_exists()
  15. array_pad()
  16. array_pop()
  17. array_product()
  18. array_sum()
  19. array_push()
  20. array_search()
  21. array_reduce()

二、实例

1. array_merge();

合并数组


<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_merge($a1,$a2)); Array
(
[0] => red
[1] => green
[2] => blue
[3] => yellow
)

2. array_keys();

2.1、【第一参数】【必选】取键名做值

返回包含数组中所有键名的一个新数组:


$a=array(
"name"=>"zhangsan",
"age"=>"18",
"h"=>"178");
print_r(array_keys($a)); Array
(
[0] => name
[1] => age
[2] => h
)

2.2、【第二参数】【可选】,指定value的key

取指定value的key,作为返回array的value


$a=array(
"name"=>"zhangsan",
"age"=>"18",
"h"=>"178");
print_r(array_keys($a,"178")); Array
(
[0] => h
)

2.3、【第三参数】【可选】 返回带有指定键值的键名

true为严格类型


$a=array(10,20,30,"10");
print_r(array_keys($a,"10",true));
//返回结果
Array
(
[0] => 3
) $a=array(10,20,30,"10");
print_r(array_keys($a,"10",true));
//返回结果
Array
(
[0] => 0
[1] => 3
)

3. array_filter();

用回调函数过滤数组中的值

4. in_array();

参数 是否可选 描述
value 必选 需要搜素的键值。
array 必选 规定被搜索的数组
strict 可选 如果设置为 true,则在数组中检查给定值的类型,默认是false

搜索数组中是否存在指定的值。

  1. 如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。
  2. 如果设置为 true,则在数组中检查给定值的类型

示例部分


$array = array(
'egg' => true,
'cheese' => false,
'hair' => 765,
'goblins' => null,
'ogres' => 'no ogres allowed in this array'
); var_dump(in_array('wo shi sui bian shuru de ,danshi  jieguo haishi true', $array));exit;
var_dump(in_array('null', $array)); //true
var_dump(in_array(null, $array,true)); //false
var_dump(in_array('', $array)); //true
var_dump(in_array('', $array,true)); //false

5. array_shift();

删除数组中的第一个元素(red),并返回被删除元素的值:


<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_shift($a);
print_r ($a);
?>

6. array_map();

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

提示:您可以向函数输入一个或者多个数组。


<?php
function myfunction($v)
{
return($v*$v);
} $a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));
?>

7. array_diff();

8. array_values();

9. array_unique();

10. array_flip()

11. array_multisort()

12. array_column()

13. array_intersect()

14. array_key_exists()

15. array_pad()

16. array_pop()

17. array_product()

18. array_sum()

19. array_push()

20. array_search()

21. array_reduce()

原文地址:https://segmentfault.com/a/1190000016337387

PHP开发过程中数组汇总 [ 持续更新系列 ]的更多相关文章

  1. 《WCF技术剖析》博文系列汇总[持续更新中]

    原文:<WCF技术剖析>博文系列汇总[持续更新中] 近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析(卷1)>的写作,一直无暇管理自己的Blog.在<WCF技术剖 ...

  2. 中国.NET:各地微软技术俱乐部汇总(持续更新中...)

    中国.NET:各地微软技术俱乐部汇总(持续更新中...)   本文是转载文,源地址: https://www.cnblogs.com/panchun/p/JLBList.html by ​史记微软. ...

  3. 跟我学SpringCloud | 终篇:文章汇总(持续更新)

    SpringCloud系列教程 | 终篇:文章汇总(持续更新) 我为什么这些文章?一是巩固自己的知识,二是希望有更加开放和与人分享的心态,三是接受各位大神的批评指教,有任何问题可以联系我: inwsy ...

  4. redis日常使用汇总--持续更新

    redis日常使用汇总--持续更新 工作中有较多用到redis的场景,尤其是触及性能优化的方面,传统的缓存策略在处理持久化和多服务间数据共享的问题总是不尽人意,此时引入redis,但redis是单线程 ...

  5. 痞子衡嵌入式:史上最强i.MX RT学习资源汇总(持续更新中...)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MX RT学习资源. 类别 资源 简介 官方汇总 i.MXRT产品主页 恩智浦官方i.MXRT产品主页,最权威的资料都在这里,参考手 ...

  6. Type Script在Visual Studio 2013中的问题汇总(持续更新…)

    TypeScript在vs2012下的问题 TypeScript对VS2012支持度比较低,建议升级为VS2013版本以上. 在VS2013中无法创建TypeScript项目 VS2013默认不支持T ...

  7. FreeCMS开发过程问题总结(持续更新中)

    正在做freecms的二次开发,特对开发过程中遇到的问题及原因分析进行总结分享,共勉. 2014/4/25 错误提示:静态化处理失败,原因:Expression answerList is undef ...

  8. 优步UBER司机全国各地最新奖励政策汇总(持续更新...)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://didi-uber.com/archiv ...

  9. IT书籍下载汇总--持续更新

    本书单由北北分享,并持续更新,请将该地址加入收藏夹:北北的书单 .badge{float:right;}.list-group-item > .badge + .badge{margin-rig ...

随机推荐

  1. POJ 1279

    发现好多半平面交用N^2的增量法都能过诶... #include <iostream> #include <cstdio> #include <cstring> # ...

  2. 关于SharePoint讨论板的一些知识(2)--视图中的栏目

    关于SharePoint讨论板的一些知识(2)--视图中的栏目         新建讨论后,默认显示四个栏目:主题.创建者.答复和上次更新时间.         从功能区的当前视图能够看出这是默认的主 ...

  3. cocos2dx3.0 结构图

    图片较大.请下载看 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzE4NzY3MTA0MTgz/font/5a6L5L2T/fontsize/400/f ...

  4. Libgdx: android单机斗地主支持局域网wifi联网的网络模块核心代码

    这个作品是我近期写的,结合我的毕业设计的通信模块和之前的单机版斗地主.我已经上架到豌豆荚了,贴了点广告,看看能不能赚点茶钱. 但是一点也不乐观.因此我想分享给大家源代码. 仅仅要不用于商业. 以下先贴 ...

  5. POJ - 3280Cheapest Palindrome-经典区间DP

    POJ - 3280 Cheapest Palindrome Time Limit: 2000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & ...

  6. Python 中的循环与 else

    1. 含义 Python 中的循环与 else 有以下两种形式 for - else while - else Python中的 for.while 循环都有一个可选(optional)的 else ...

  7. Spring进行表单验证

    转自:https://www.tianmaying.com/tutorial/spring-form-validation 开发环境 IDE+Java环境(JDK 1.7或以上版本) Maven 3. ...

  8. kali 下使用 arpspoof 实现 ARP 欺骗

    ARP 欺骗: 一种中间人攻击,攻击者通过毒化受害者的 ARP 缓存,将网关的 MAC 替换成攻击者的 MAC ,于是攻击者的主机实际上就充当了受害主机的网关, 之后攻击者就可以截获受害者发出和接到的 ...

  9. colab使用谷歌云中的文件

    colab使用谷歌云中文件 无法一劳永逸 Google Colab最大的不足就是使用虚拟机,这意味着我们自行安装的库虚拟机重启之后,就会被复原,比如keras,数据无法持久化.为了能够持久保存数据,我 ...

  10. BZOJ 4771 主席树+倍增+set

    思路: 因为有深度的限制,并且我们是在线段树上维护权值,所以我们把点按照dep排序,然后一个一个修改...主席树的下标就是dfs序,子树的查询就是区间查询... 但是发现这样怎么去维护LCA呢...因 ...