你应该这个姿势学习PHP(2)

1、循环数组有哪几种方式

1)foreach(能够循环关联和索引数组以及对象)

2)for(只能循环索引数组)

3)list和each配合使用循环数组

$arr = ['a'=>1,'b'=>2];

while(list($key,$val) = each($arr)){

echo $key$,val

}

2、is_array(),is_bool,is_int(),is_integer(),is_numeric(),is_string(),is_object(),is_null,is_file,is_dir,is_readable,is_uploaded_file,is_writeable,

1)is_array() 检查一个变量是否是数组

2)is_file() 检查是否是一个文件

3)is_dir()检查是否是一个目录

4)is_uploaded_file() 检查是否是通过http post过来

5)is_readable() 检查是否可读

3、count()

1)计算数组的长度

4、array_sum()、array_product()

1)array_sum() 计算一个数组的和

2)array_product() 计算数组的乘积

5、array_count_values()

1)计算数组中的值出现次数的和

6、in_array()  array_key_exists()  array_search() key_exists()

1)in_array('xxx',$arr) 判断某个字符是否在数组中,并返回false或者true

2)array_key_exists('xxx',$arr)  判断一个键是否存在这个数组中

3)array_search('xxx',$arr)  判断某个值是否在数组中并返回key

7、array_values()  array_keys()  array_column()

1)array_values($arr) 返回数组的值

2)array_keys() 返回数组的所有键

2)array_column($arr,'xxxx') 返回数组的某一个列的值

8、array_filter()  array_walk()  array_walk_recursive()   array_map()

1)array_filter($arr,'function')  用一个回调函数过滤一个数组

2)array_walk($arr,'function',[$param]) 用一个回调函数处理数组,并且可以使用一个其他值作为参数传递给函数

3)array_walk_recursive($arr,'function',[$param]) 对一个数组进行递归的使用函数

4)array_map($arr,funciont) 对数组的每个元素应用函数

9、array_unique()

1)对数组进行去重操作

10、array_change_key_case()

1)将数组的所有键名转换成小写

11、range()

1)range(0,n,step=步长)创建数组

12、array_fill()   array_fill_keys()

1)array_fill(key_start,long,'xxx')用某个值填充数组

2)array_fill_keys($arr,'xxx')  用某个值和当前数组结合产生一个以$arr为键,以xxx为值的新数组

13、array_flip()   array_reverse()

1)array_flip()交换数组的建和值

2)array_reverse($arr,[true])  反转数组,如果第二个参数为true将保留数组的原键

14、array_pad()

1)array_pad($arr,long,xxx)   填充数组到指定的长度

15、array_rand()   shuffle()

1)array_rand($arr,2)  随机去除几个数组

2)shuffle()  打乱数组

应用场景:随机的或者数组的一个值

16、array_shift()   array_unshift()   array_push()   array_pop()

1)array_shift($arr)   从头部弹出一个值,栈

2)array_unshift($arr,[a,b,c...]) 入栈

应用场景:模拟栈

3)array_push($arr,[a,b,c....]) 从尾部插入一个值到数组中

4)array_pop($arr) 从尾部弹出一个值

应用场景:配合array_unshift 模拟队列

18、array_merge()   array_merge_recursive()

1)array_merge()  合并两个数组,后者会覆盖前者键相同的值

2)array_merge_recursive()  递归的合并两个数组,后者会覆盖前者键相同的值

应用场景:框架里面两个配置文件的合并

19、array_multisort(),sort (),rsort (),krsort (),ksort(),asort(),arsort()

1)array_multisort($arr[0],SORT_ASC,$arr[1],SORT_DESC);

对多个数组进行排序

2)sort  数组升序

3)rsort 数组降序

4)krsort  使用键值对数组降序

5)ksort  使用键值对数组进行升序

6)asort 对数组进行升序排序并保持索引关系

7)arsort 对数组进行降序排序并保持索引关系

20、next  prev  rest  end  current

1)next  //将数组中指针向前移动一位

2)prev //将数组内部指针倒回一位

3)rest   //将数组指针指向第一个单元

4)end  //将数组指针指向最后一个单元

5)current //返回数组中的当前单元

21、max()  min()

1)max() 取最大值

2)min() 取最小值

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏GreenLeaves

JavaScript引用类型之Object类型

在JavaScript中大多数的引用类型都是Object的实例,Object类型也是使用最多的类型! 创建Object类型实例的方式有两种,下面分别来分析一下:...

22150
来自专栏lzj_learn_note

1-python基础

​ 同一个变量a可以反复赋值,且可以是不同类型的变量. 这种变量本身类型不固定的语言称为动态语言, 比如python, javascript....

28620
来自专栏软件开发 -- 分享 互助 成长

C++ 隐式类型转换

C++定义了一组内置类型对象之间的转换标准,在必要的时候它们被编译器隐式的转换 1、任何两种或多种类型的数据和变量混合操作的时候,最宽的数据类型成为目标转换类型...

23870
来自专栏python学习指南

python列表

本篇将介绍python中的列表,更多内容请参考:Python学习指南 一、序列 在python中有六种内建的序列:列表、元祖、字符串、Unicode字符串...

40950
来自专栏desperate633

LintCode 编辑距离题目分析代码

给出两个单词word1和word2,计算出将word1 转换为word2的最少操作次数。

10520
来自专栏Java帮帮-微信公众号-技术文章全总结

第四天 数组【悟空教程】

22390
来自专栏PHP在线

PHP函数

请点击上面蓝色PHP关注 你知道这些简单的函数中的方法吗? count() 函数计算数组中的单元数目或对象中的属性个数。 对于数组,返回其元素的个数,对于其他值...

29950
来自专栏Python小屋

Python内置函数sorted()和列表方法sort()排序规则不得不说的事

Python内置函数sorted()和列表方法sort()可以使用key参数指定排序规则,并且都是稳定排序,也就是说,对于指定规则不能涵盖的元素,本来谁在前面,...

28130
来自专栏章鱼的慢慢技术路

多维数组的传递

16540
来自专栏desperate633

LintCode 移动零题目分析

给一个数组 nums 写一个函数将0 移动到数组的最后面,非零元素保持原数组的顺序

8520

扫码关注云+社区

领取腾讯云代金券