PHP基础-常用的数组相关处理函数
一 数组键/值操作有关的函数
1. array_values()//获取数组中所有的值
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySqL", "laguage"=>"php");
$arr=array_values($lamp);
list($os, $wb, $db, $lang)=$arr;
echo $os."<br>";
echo $wb."<br>";
echo $db."<br>";
echo $lang."<br>";
echo '<pre>';
print_r($arr);
echo '</pre>';
2. array_keys()//返回数组中所有的键
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySql", "laguage"=>"php");
三种用法:
$arr=array_keys($lamp);
$arr=array_keys($lamp, "MySql");
$arr=array_keys($lamp, "100", true);
echo '<pre>';
print_r($arr);
echo '</pre>';
3. in_array() //判断值是否在数组中
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySql", "laguage"=>"php", "html"=>"100", array("a", "b"));
if(in_array(array("a", "b"), $lamp)){
echo "exists";
}else{
echo "not exists";
}
if(in_array("100", $lamp, true)){
echo "exists";
}else{
echo "not exists";
}
echo '<pre>';
print_r($arr);
echo '</pre>';
4. array_key_exists//判断数组中是否存在相应的键
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySql", "laguage"=>"php", "html"=>"100", array("a", "b"));
if(array_key_exists("os1", $lamp)){
echo "exists";
}else{
echo "not exists";
}
echo '<pre>';
print_r($arr);
echo '</pre>';
5.array_flip -- 交换数组中的键和值
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySql", "laguage"=>"php", "html"=>"100", 10=>"linux");
$arr=array_flip($lamp);
echo '<pre>';
print_r($arr);
echo '</pre>';
6. array_reverse -- 返回一个单元顺序相反的数组
$lamp=array("os"=>"linux", "webserver"=>"Apache", "db"=>"MySql", "laguage"=>"php", "html"=>"100", 10=>"linux");
$arr=array_reverse($lamp);
echo '<pre>';
print_r($arr);
echo '</pre>'
二、 统计数组元素的个数和惟一性
1. count() sizeof();
2. array_count_values -- 统计数组中所有的值出现的次数
3. array_unique -- 移除数组中重复的值
三、使用回调函数处理数组的函数
1. array_filter() 用回调函数过滤数组中的单元
2. array_walk() 数组中的每个成员应用用户函数
3. array_map() 将回调函数作用到给定数组的单元上
四、数组的排序函数
sort()、rsort()
usort()、asort()
arsort()、uasort()
ksort()、krsort()、uksort()、
natsort()、natcasesort()
array_multisort()
1. 简单的数组排序
sort() rsort()
2. 根据键名对数组排序
ksort() krsort()
3. 根据元素的值对数组排序
asort() arsort()
4. 根据“自然数排序”法对数组排序
natsort() natcasesort()
5. 根据用户自定义规则对数组排序
usort() uasort() uksort()
6.多维数组的排序
array_multisort
五、 拆分、合并、分解、接合的数组函数
1. array_slice()
2.array_splice()
3. array_combine();
4. array_merge();
5. array_intersect();
6. array_diff()
六、 数组与数据结构的函数
1. 使用数据实现堆栈
array_push()
array_pop()
2. 使用队列
array_unshift()
array_shift()
unset()
七、 其它与数据操作有关的函数
array_rand();
shuffle()
array_sum()
range()
PHP基础-常用的数组相关处理函数的更多相关文章
- PHP常用的数组相关处理函数
[数组中常用的多种遍历方式] [for 和 foreach 略] [while() . list() .each() 组合循环遍历数组] each()函数 a. 需要一个数组作为参数 b. 返回来的也 ...
- PHP基础系列(二) PHP数组相关的函数分类整理
之前写过一篇介绍 PHP字符串函数 的博文,这里写第二篇,本文主要介绍PHP 数组相关的函数: 一.检查数组中是否存在 array_key_exists — 检查给定的键名或索引是否存在于数组中 ar ...
- day06-Python运维开发基础(字符串格式化与相关的函数、列表相关的操作)
1. 字符串相关的操作与格式化 # ### 字符串相关操作 # (1)字符串的拼接 + var1 = "亲爱的," var2 = "男孩" res = var1 ...
- Java基础--常用API--IO流相关API
一.IO流 1.定义: IO流指的是Input/Output流,即输入流/输出流. 输入流:将外界信息写入程序,即从外界获取信息,属于读操作. 输出流:将程序数据发送给外界,即向外界传输数据,属于写操 ...
- 【php】php数组相关操作函数片段
下面这些都是我在工作中用到的函数,现在整理下. 判断是否是一个数组 function _is_array($value){ if (is_array($value)) { return true; } ...
- Java基础--常用API--日期相关API
一.java.util.Date 1.只用于显示系统时间,其大部分操作由Calendar代替. 格林威治时间(GMT):指的是1970年1月1日0时,不同地区有时间差. 默认输出格式:星期.月.日.时 ...
- 最常用的~正则表达式-相关js函数知识简洁分享【新手推荐】
一.正则表达式的创建 JS正则的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 varregObj =newRegExp("(^\s+)|(\s+ ...
- php 数组相关的函数?
array()----创建数组array_combine()----通过合并两个数组来创建一个新数组range()----创建并返回一个包含指定范围的元素的数组compact()----建立一个数组a ...
- matlab 常用集合相关的函数
Matlab常用的集合相关的函数如下: union(A,B) %求集合A和集合B的并集 intersect(A,B) %求集合A和集合 ...
随机推荐
- 在swoole中制作一款仿制laravel的框架
首先需要确定一下思路:我希望基于swoole的扩展开发的代码在run起来的时候,在接收到ws或是tcp等消息时,自动路由到某个类上,同时类可以实现加载类的依赖注入功能.目前市面上占据主流的一款框架La ...
- [差分][二分][贪心]luogu P3634 [APIO2012]守卫
题面 https://www.luogu.com.cn/problem/P3634 给m个限制,可以是一段区间中必须有或者必须无忍者 最多有k个忍者,问有多少个位点一定有忍者 分析 首先用差分标记一下 ...
- ssh 免登录配置
引子 近日海淘了一个 mini-PC:Gigabyte GB-BSRE-1605,此设备虽采用 amd 嵌入式低功耗处理器,性能相比现在自己所用的设备却有不小提升,加上先前升级电脑多余一些 ssd 和 ...
- 使用 dynamic 类型让 ASP.NET Core 实现 HATEOAS 结构的 RESTful API
上一篇写的是使用静态基类方法的实现步骤: http://www.cnblogs.com/cgzl/p/8726805.html 使用dynamic (ExpandoObject)的好处就是可以动态组 ...
- java进阶(38)--线程安全
文档目录: 一.概念 二.解决方案 三.举例说明 ---------------------------------------分割线:正文------------------------------ ...
- (5)MySQL进阶篇SQL优化(优化数据库对象)
1.概述 在数据库设计过程中,用户可能会经常遇到这种问题:是否应该把所有表都按照第三范式来设计?表里面的字段到底改设置为多大长度合适?这些问题虽然很小,但是如果设计不当则可能会给将来的应用带来很多的性 ...
- 【linux】驱动-10-pinctrl子系统
目录 前言 10. pinctrl子系统 10.1 参考路径 10.2 pinctrl子系统主要工作 10.2 pinctrl子系统格式说明 10.3 概念 10.4 实例分析 10.4.1 pin ...
- 又一起.NET程序挂死, 用 Windbg 抽丝剥茧式的真实案例分析
一:背景 1. 讲故事 前天有位粉丝朋友在后台留言让我帮忙看看他的 Winform程序 UI无响应 + 410线程 到底是啥情况,如下图: 说实话,能看到这些真实案例我是特别喜欢的 ,就像医生看病,光 ...
- 一文吃透jQuery选择器!
1 jQuery选择器 jQuery选择器用于选择DOM元素进行相应操作,允许通过多种方式选择,包括标签名,属性名,类名,id等对元素进行选择,基于CSS选择器.jQuery中所有的选择器都以$符号开 ...
- JavaFX+SpringBoot+验证码功能的小型薪酬管理系统
2020.07.22更新 1 概述 1.1 简介 一个简单的小型薪酬管理系统,前端JavaFX+后端Spring Boot,功能倒没多少,主要精力放在了UI和前端的一些逻辑上面,后端其实做得很简单. ...