前言:由于之前接触过js,所以在学习php的时候,里面继承了js的许多方法,所以数组里面的许多操作和js很相似,但是却比js里面多的多,个人感觉php是集成数组方法最多的一个

,今天学习的有二十余个,如果有错误的或者疏忽的希望大神以及园友们指出来,相互交流,相互学习,一起进步。

这个博客的代码是我在一个demo里面写的,可能用到的数组在上面,但是也不复杂,就用了几个数组。废话不多说,开扯:

1.       array_values()返回数组中的所有值

$array = array("name" => "zhangsan","age" => "10","age" => "10","sex" => "man");
$item1 = array_values($array);
print_r($item1);

  

 2.  array_keys()返回数组中的所有值

$item2 = array_keys($array);

print_r($item2);

  

 

3.in_array  检查数组中是否存在某个值,返回布尔类型,地上那个值为是否是同一类型.

$item3 = in_array("10",$array,true);

print_r($item3);

  

4.array_flip — 交换数组中的键和值

$item4 = array_flip($array);

print_r($item4);

  

 

5.count — 计算数组中的单元数目或对象中的属性个数

$item5 = count($array);

print_r($item5);

  

 

6.array_count_values — 统计数组中所有的值出现的次数

$item6 = array_count_values($array);

print_r($item6);

  

 

7.array_unique — 移除数组中重复的值

$item7 = array_unique($array);

print_r($item7);

  

 

8.array_reverse — 返回一个单元顺序相反的新数组,第二个值为键是否翻转,

不会改变原有的数组,只对索引数组有效

$array1 = array(1,2,3,4,5);

$item8 = array_reverse($array1,true);

  

9.array_filter — 用回调函数过滤数组中的单元

会将值传递到回调函数中去,返回true,则函数的值会被调用

function filter($value){

    if($value>3){

        return true;

    }

};

$item9 = array_filter($array1,"filter");

print_r($item9);

  

10.array_walk — 使用用户自定义函数对数组中的每个元素做回调处理

返回布尔类型(执行成功或者失败)

function walk($value){

    if($value>3){

        echo $value." ";

    }

};

$item10 = array_walk($array1,"walk");

  

 

11.array_map — 为数组的每个元素应用回调函数

回调函数在前,数组在后

function map($value){

    return $value*$value;

};

$item11 = array_map("map",$array1);

print_r($item11);

  

 

12.sort — 对数组排序(升序),会改变之前数组

sort($array1);

print_r($array1);

  

 

13.rsort — 对数组排序(降序),会改变之前数组

rsort($array1);

print_r($array1);

  

 

14.array_slice — 从数组中取出一段,返回截取的数值

(函数名称,起始索引,长度,是否保留索引)

$item14 = array_slice($array1,1,2,true);

print_r($item14);

  

 

15.array_splice — 把数组中的一部分去掉并用其它值取代

返回删除的内容,原数组改变

$item15 = array_splice($array1,1,2,"房明");

print_r($item15);

print_r($array1);

  

 

16.array_combine — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值

两个数组的值的个数必须是一样的

$array2 = array("name","age","sex");

$array3 = array("房明","18","男");

$item16 = array_combine($array2,$array3);

print_r($item16);

  

 

17.array_merge — 合并一个或多个数组

$item17 = array_merge($array2,$array3);

print_r($item17);

  

 

18.array_intersect — 计算数组的交集

$array4 = array(1,2,3,4);

$array5 = array(3,4,5,6);

$item18 = array_intersect($array4,$array5);

print_r($item18);

  

 

19.array_diff — 计算数组的差集

返回的是第一个数组当中与第二个数组当中不同的数值,不会返回第二个数组中的值

$item19 = array_diff($array5,$array4);

print_r($item19);

  

 

20.array_pop — 将数组最后一个单元弹出(出栈)

返回被删除的值,改变原来的数组

$item20 = array_pop($array4);

print_r($item20);

print_r($array4);

  

 

21.array_push — 将一个或多个单元压入数组的末尾(入栈)

返回添加的值,改变原来的数组,(数组名称,添加数值)

$item21 = array_push($array4,"5");

print_r($item21);

print_r($array4);

  

 

22.array_shift — 将数组开头的单元移出数组

返回被删除的值,改变原来的数组

$item22 = array_shift($array4);

print_r($item22);

print_r($array4);

  

 

23.array_unshift — 在数组开头插入一个或多个单元

返回添加的值,改变原来的数组,(数组名称,添加数值)

$item23 = array_unshift($array4,"10");

print_r($item23);

print_r($array4);

  

 

24.array_rand — 从数组中随机取出一个或多个单元

$item24 = array_rand($array4);

print_r($item24);

  

 

 

25.shuffle — 将数组打乱,会改变之前的数组

$item25 = shuffle($array4);

print_r($array4);

  

 

php学习五:数组操作的更多相关文章

  1. 【php学习】数组操作

    1.json字符串和数组之间的转换 json_decode($jsonStr)      json字符串解码为php变量,若第二个参数默认为false,返回一个对象:若第二个参数设置true,则返回一 ...

  2. Javascript入门(五)数组操作、循环语句

    一.数组与数组操作 <script type="text/javascript"> //数组定义方式 var list1 = new Array(1,2,3); var ...

  3. [jQuery学习系列二 ]2-JQuery学习二-数组操作

    前言 上一篇内容 已经对于Jquery 有了一些认识, 包括Jquery的选择器和DOM对象, 那么这一篇继续来看下Jquery中很实用的Jquery对于数组的操作. Jquery中对数组的操作大致有 ...

  4. jquery 学习(五) - CSS 操作

    HTML + CSS 样式 /*CSS样式*/<style> body{ margin: 0; } div{ width: 100%; height: 2000px; background ...

  5. 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中

    写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...

  6. RX学习笔记:JavaScript数组操作

    RX学习笔记:JavaScript数组操作 2016-07-03 增删元素 unshift() 在数组开关添加元素 array.unshift("value"); array.un ...

  7. Scala学习(三)----数组相关操作

    数组相关操作 摘要: 本篇主要学习如何在Scala中操作数组.Java和C++程序员通常会选用数组或近似的结构(比如数组列表或向量)来收集一组元素.在Scala中,我们的选择更多,不过现在我们先假定不 ...

  8. python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...

  9. matlab学习笔记11_1低维数组操作

    一起来学matlab-matlab学习笔记11 11_1 低维数组操作repmat函数,cat函数,diag函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab ...

  10. Halcon学习(三)赋值与数组操作

    assign : 对数据赋值,对数组的初始化.但不能对数组中的某一个值进行赋值. 举例:Tuple1 := [1,0,3,4,5,6,7,8,9]    // 对数组进行初始化 Val := sin( ...

随机推荐

  1. 推荐10款纯css3实现的实用按钮

    在2014年的双11即将来临之季,爱编程小编为大家整理10款纯css3实现的按钮.希望这对坚守在前端的码农们有所帮助.亲,如果你有好的资源也可在本文留言,让从事编码的程序员们抱团.工作更轻松. No1 ...

  2. Head First 设计模式读书笔记(1)-策略模式

    一.策略模式的定义 策略模式定义了算法族,分别封装起来,让它们之间可以互换替换,此模式让算法的变化独立使用算法的客户. 二.使用策略模式的一个例子 2.1引出问题 某公司做了一套模拟鸭子的游戏:该游戏 ...

  3. wampserver 手动启用停用命令

    1.定位到安装目录 在cmd中定位到wampserver的安装目录,如:D:\wamp\bin\apache\Apache2.4.4\bin 2.执行命令 启动apache命令httpd -k sta ...

  4. C语言 · 整除问题

    算法训练 整除问题   时间限制:1.0s   内存限制:512.0MB      问题描述 编写一个程序,输入三个正整数min.max和factor,然后对于min到max之间的每一个整数(包括mi ...

  5. [posix]Posix多线程编程

    就不排版了,可以到原作者博客下看 转自:http://www.cnblogs.com/zhangsf/archive/2013/09/09/3309867.html 目录表  摘要 译者序 Pthre ...

  6. HashMap与ConcurrentHashMap的区别<转>

    从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心. 在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从 ...

  7. FusionCharts JavaScript API - Events 全局事件处理

    FusionCharts JavaScript API - Events 全局事件处理 Home > FusionCharts XT and JavaScript > API Refere ...

  8. Ubuntu14.04使用DEB安装Mysql5.7

    下载deb-bundle包 1.mysql下载页面 2.解压 安装(注意安装顺序)          安装顺序如下:           1.mysql-common_5.7.10-1ubuntu14 ...

  9. CDH impala安装

    环境 CDH版本:5.12.1 添加impala parcel 1.菜单“主机”-->Parcel-->配置-->远程 Parcel 存储库 URL,点击添加按钮,添加一个URL,h ...

  10. Entity Framework实体拆分

    一.概念 实体拆分:一个实体拆分成多个表,如Product实体,可以拆分成Product和ProductWebInfo两个表,Product表用于存储商品的字符类信息,ProductWebInfo用于 ...