一 数组键/值操作有关的函数
  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. JAVA安装第一步JDK

    安装JDK----(一学就会) 一.百度搜索JDK,找到下载的地址 二.下载属于自己电脑的对应版本 三.下载到本地之后,双击安装JDK 四.配置环境变量 我的电脑->右键->属性 环境变量 ...

  2. ch1_6_1求解两种排序方法问题

    考拉有n个字符串字符串,任意两个字符串长度都是不同的.  考拉最近学习到有两种字符串的排序方法:   1.根据字符串的字典序排序.例如: "car" < "carr ...

  3. SynchronousQueue核心源码分析

    一.SynchronousQueue的介绍 SynchronousQueue是一个不存储元素的阻塞队列.每一个put操作必须等待一个take操作,否则不能继续添加元素.SynchronousQueue ...

  4. fork、exec 和 exit 对 IPC 对象的影响

    GitHub: https://github.com/storagezhang Emai: debugzhang@163.com 华为云社区: https://bbs.huaweicloud.com/ ...

  5. sqli-labs系列——第二关

    less2 and 1=1有回显,and 1=2无回显,为数值型注入 order by 4–+报错,有3行 查询数据库名 ?id=0' union select 1,(select group_con ...

  6. Azure Front Door(三)启用 Web Application Firewall (WAF) 保护Web 应用程序,拒绝恶意攻击

    一,引言 上一篇我们利用 Azure Front Door 为后端 VM 部署提供流量的负载均衡.因为是演示实例,也没有实际的后端实例代码,只有一个 "Index.html" 的静 ...

  7. windows平台rust安装

    1.安装目录环境变量 RUSTUP_HOME D:\WorkSoftware\Rust\cargo CARGO_HOME D:\WorkSoftware\Rust\rustup 2.安装下载加速环境变 ...

  8. elasticsearch 7.7 配置文件:elasticsearch.yml

    # ======================== Elasticsearch Configuration ========================= # # NOTE: Elasticse ...

  9. RabbitMQ 入门 (Go) - 6. 数据持久化(上)

    从本节开始,我介绍一下如何将相关数据持久化到数据库,也就是上图中蓝色的部分. 目前的问题 我先运行 6 个传感器和2 个协调器,这里我使用了批处理文件: 运行后,看一下 RabbitMQ 的管理控制台 ...

  10. OO 第二单元

    前言 ​ 第二单元 OO 作业的主题是多线程,课程组通过了电梯调度这个经典问题考察了多线程的调度. ​ 从第五次作业到第七次作业的迭代为,单部多线程可捎带电梯,多部多线程可捎带调度电梯(电梯属性相同) ...