一 数组键/值操作有关的函数
  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基础-常用的数组相关处理函数的更多相关文章

  1. PHP常用的数组相关处理函数

    [数组中常用的多种遍历方式] [for 和 foreach 略] [while() . list() .each() 组合循环遍历数组] each()函数 a. 需要一个数组作为参数 b. 返回来的也 ...

  2. PHP基础系列(二) PHP数组相关的函数分类整理

    之前写过一篇介绍 PHP字符串函数 的博文,这里写第二篇,本文主要介绍PHP 数组相关的函数: 一.检查数组中是否存在 array_key_exists — 检查给定的键名或索引是否存在于数组中 ar ...

  3. day06-Python运维开发基础(字符串格式化与相关的函数、列表相关的操作)

    1. 字符串相关的操作与格式化 # ### 字符串相关操作 # (1)字符串的拼接 + var1 = "亲爱的," var2 = "男孩" res = var1 ...

  4. Java基础--常用API--IO流相关API

    一.IO流 1.定义: IO流指的是Input/Output流,即输入流/输出流. 输入流:将外界信息写入程序,即从外界获取信息,属于读操作. 输出流:将程序数据发送给外界,即向外界传输数据,属于写操 ...

  5. 【php】php数组相关操作函数片段

    下面这些都是我在工作中用到的函数,现在整理下. 判断是否是一个数组 function _is_array($value){ if (is_array($value)) { return true; } ...

  6. Java基础--常用API--日期相关API

    一.java.util.Date 1.只用于显示系统时间,其大部分操作由Calendar代替. 格林威治时间(GMT):指的是1970年1月1日0时,不同地区有时间差. 默认输出格式:星期.月.日.时 ...

  7. 最常用的~正则表达式-相关js函数知识简洁分享【新手推荐】

    一.正则表达式的创建 JS正则的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 varregObj =newRegExp("(^\s+)|(\s+ ...

  8. php 数组相关的函数?

    array()----创建数组array_combine()----通过合并两个数组来创建一个新数组range()----创建并返回一个包含指定范围的元素的数组compact()----建立一个数组a ...

  9. matlab 常用集合相关的函数

    Matlab常用的集合相关的函数如下:     union(A,B)              %求集合A和集合B的并集     intersect(A,B)             %求集合A和集合 ...

随机推荐

  1. 在swoole中制作一款仿制laravel的框架

    首先需要确定一下思路:我希望基于swoole的扩展开发的代码在run起来的时候,在接收到ws或是tcp等消息时,自动路由到某个类上,同时类可以实现加载类的依赖注入功能.目前市面上占据主流的一款框架La ...

  2. [差分][二分][贪心]luogu P3634 [APIO2012]守卫

    题面 https://www.luogu.com.cn/problem/P3634 给m个限制,可以是一段区间中必须有或者必须无忍者 最多有k个忍者,问有多少个位点一定有忍者 分析 首先用差分标记一下 ...

  3. ssh 免登录配置

    引子 近日海淘了一个 mini-PC:Gigabyte GB-BSRE-1605,此设备虽采用 amd 嵌入式低功耗处理器,性能相比现在自己所用的设备却有不小提升,加上先前升级电脑多余一些 ssd 和 ...

  4. 使用 dynamic 类型让 ASP.NET Core 实现 HATEOAS 结构的 RESTful API

    上一篇写的是使用静态基类方法的实现步骤:  http://www.cnblogs.com/cgzl/p/8726805.html 使用dynamic (ExpandoObject)的好处就是可以动态组 ...

  5. java进阶(38)--线程安全

    文档目录: 一.概念 二.解决方案 三.举例说明 ---------------------------------------分割线:正文------------------------------ ...

  6. (5)MySQL进阶篇SQL优化(优化数据库对象)

    1.概述 在数据库设计过程中,用户可能会经常遇到这种问题:是否应该把所有表都按照第三范式来设计?表里面的字段到底改设置为多大长度合适?这些问题虽然很小,但是如果设计不当则可能会给将来的应用带来很多的性 ...

  7. 【linux】驱动-10-pinctrl子系统

    目录 前言 10. pinctrl子系统 10.1 参考路径 10.2 pinctrl子系统主要工作 10.2 pinctrl子系统格式说明 10.3 概念 10.4 实例分析 10.4.1 pin ...

  8. 又一起.NET程序挂死, 用 Windbg 抽丝剥茧式的真实案例分析

    一:背景 1. 讲故事 前天有位粉丝朋友在后台留言让我帮忙看看他的 Winform程序 UI无响应 + 410线程 到底是啥情况,如下图: 说实话,能看到这些真实案例我是特别喜欢的 ,就像医生看病,光 ...

  9. 一文吃透jQuery选择器!

    1 jQuery选择器 jQuery选择器用于选择DOM元素进行相应操作,允许通过多种方式选择,包括标签名,属性名,类名,id等对元素进行选择,基于CSS选择器.jQuery中所有的选择器都以$符号开 ...

  10. JavaFX+SpringBoot+验证码功能的小型薪酬管理系统

    2020.07.22更新 1 概述 1.1 简介 一个简单的小型薪酬管理系统,前端JavaFX+后端Spring Boot,功能倒没多少,主要精力放在了UI和前端的一些逻辑上面,后端其实做得很简单. ...