php数组方法
查找、筛选与搜索数组元素是数组操作的一些常见功能。下面来介绍一下几个相关的函数。
in_array()函数
in_array()函数在一个数组汇总搜索一个特定值,如果找到这个值返回true,否则返回false。其形式如下:
1 |
boolean in_array(mixed needle,array haystack[,boolean strict]); |
来看下面的例子,查找变量apple是否已经在数组中,如果在,则输出一段信息:
1 |
$fruit = "apple"; |
2 |
$fruits = array("apple","banana","orange","pear"); |
3 |
if( in_array($fruit,$fruits) ) |
4 |
echo "$fruit 已经在数组中"; |
第三个参数可选,它强制in_array()在搜索时考虑类型。
array_key_exists()函数
如果在一个数组中找到一个指定的键,函数array_key_exists()返回true,否则返回false。其形式如下:
1 |
boolean array_key_exists(mixed key,array array); |
下面的例子将在数组键中搜索apple,如果找到,将输出这个水果的颜色:
1 |
$fruit["apple"] = "red"; |
2 |
$fruit["banana"] = "yellow"; |
3 |
$fruit["pear"] = "green"; |
4 |
if(array_key_exists("apple", $fruit)){ |
5 |
printf("apple's color is %s",$fruit["apple"]); |
6 |
} |
执行这段代码得到的结果:
1 |
apple's color is red |
array_search()函数
array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回false。其形式如下:
1 |
mixed array_search(mixed needle,array haystack[,boolean strict]) |
下面的例子在$fruits中搜索一个特定的日期(December 7),如果找到,则返回相应州的有关信息:
1 |
$fruits["apple"] = "red"; |
2 |
$fruits["banana"] = "yellow"; |
3 |
$fruits["watermelon"]="green"; |
4 |
$founded = array_search("green", $fruits); |
5 |
if($founded) |
6 |
printf("%s was founded on %s.",$founded, $fruits[$founded]) |
程序运行结果如下:
1 |
watermelon was founded on green. |
array_keys()函数
array_keys()函数返回一个数组,其中包含所搜索数组中找到的所有键。其形式如下:
1 |
array array_keys(array array[,mixed search_value]) |
如果包含可选参数search_value,则只会返回与该值匹配的键。下面的例子将输出$fruit数组中找到的所有数组:
1 |
$fruits["apple"] = "red"; |
2 |
$fruits["banana"] = "yellow"; |
3 |
$fruits["watermelon"]="green"; |
4 |
$keys = array_keys($fruits); |
5 |
print_r($keys); |
程序运行结果如下:
1 |
Array ( [0] => apple [1] => banana [2] => watermelon ) |
array_values()函数
array_values()函数返回一个数组中的所有值,并自动为返回的数组提供数值索引。其形式如下:
1 |
array array_values(array array) |
下面的例子将获取$fruits中找到的各元素的值:
1 |
$fruits["apple"] = "red"; |
2 |
$fruits["banana"] = "yellow"; |
3 |
$fruits["watermelon"]="green"; |
4 |
$values = array_values($fruits); |
5 |
print_r($values); |
程序运行结果如下:
1 |
Array ( [0] => red [1] => yellow [2] => green ) |
php数组方法的更多相关文章
- js数组方法
数组方法清空数组1: arr.length=02: arr=[]arr.push()//往数组最后一个添加元素,会待会一个返回值,就是新的数组长度arr.unshift()//往数组的第一个添加元素, ...
- PHP常用函数、数组方法
常用函数:rand(); 生成随机数rand(0,50); 范围随机数时间:time(); 取当前时间戳date("Y-m-d H:i:s"); Y:年 m:月份 d:天 H:当前 ...
- JavaScript之数组方法整理
Array概述 除了Object类型,最常用的类型: 实质:有序的数据列表, 特性:可以动态的调整数组的大小 创建数组的两种方式 构造函数创建方式 var arr = ...
- js数组方法扩展
/** * Created by Administrator on 2016/9/1. */ //数组去重 Array.prototype.unique = function(){ this.sort ...
- Javascript数组方法(译)
在JavaScript中,数组可以使用Array构造函数来创建,或使用[]快速创建,这也是首选的方法.数组是继承自Object的原型,并且他对typeof没有特殊的返回值,他只返回'object'. ...
- js中常用数组方法concat join push pop slice splice shift
javascript给我们很多常用的 数组方法,极大方便了我们做程序.下面我们来介绍下常用的集中数组方法. 比如 concat() join() push() pop() unshift() shif ...
- jquery $.each遍历json数组方法
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/ ...
- JavaScript学习笔记之 数组方法一 堆栈 和队列
数组的方法 以及 堆栈的操作的方法 JavaScript是一种弱类型语言,不像其它程序语言需要严格定义数据类型.在JavaScript中数组可以任意修改变动,这样也就出现了一个问题,如果边遍历数组边操 ...
- php 依据字符串生成相应数组方法
php 依据字符串生成相应数组方法 比如: <?php $config = array( 'project|page|index' => 'content', 'project|page| ...
- ECMAScript 5中新增的数组方法
ECMAScript 5中定义了9个新的数组方法,用于遍历.映射.过滤.检测.简化和搜索数组. 在开始介绍之前,很有必要对这几个新增的数组方法做一个概述.首先,大多数方法的第一个参数接收一个函数,并且 ...
随机推荐
- 学以致用三----centos7.2基本环境补充
补充: 在上一篇里,加时间戳 echo ‘export HISTTIMEFORMAT ="%F %T `whoami`" ’ >> /etc/profile sourc ...
- Arria10调试问题集之——480转成270中DDR4 IP重新生成的问题
在把FPGA器件从480修改成270时DDR4报错: Error (16383): Silicon revision parameter for the following EMIF/PHYLite ...
- 关于写css文件需要注意的事项
通常在项目中,我们尽量不要把style样式写在html中,而是使用外部.css文件的形式添加样式.在编写.css文件时,一定一定一定要注意,不要在一个css语句中写同级class名字,否则会出错,找不 ...
- Design Principle
原文地址:面向对象设计模式原则详解 http://blog.csdn.net/hguisu/article/details/7571617 程序员必备的七大面向对象设计原则(一) http://www ...
- Ng第九课:神经网络的学习(Neural Networks: Learning)
9.1 代价函数 9.2 反向传播算法 9.3 反向传播算法的直观理解 9.4 实现注意:展开参数 9.5 梯度检验 9.6 随机初始化 9.7 综合起来 9.8 自主驾驶 9.1 ...
- bzoj2893(费用流)
先缩点,然后拆点,其实是很经典的一种操作,把不好做的点拆成边,然后我一开始想的是网络流,答案当然是增广次数, 但可以发现跑网络流的话不同的跑法增广次数不一样,不太好找最小的.我们可以换一种神奇的思路, ...
- [auto-download-app] 如何使用 javascript 实现 app 自动下载
// 在访客跳转进入的页面中,执行下面使用下面 invoke function (function(){ var str_downloadUrl = "<!--{$apkUrl}--& ...
- Elasticsearch 系列4 --- Windows10安装Kibana
Kibana是Elastic Stack家族内的一部分,它是一个管理网站,与ES(Elastic Search)集成可以用来管理ES的索引,除ES外它还可以跟Elastic家族的其他组件进行整合如lo ...
- Docker学习笔记——制作容器与容器概念
Docker能做些什么? 1.docker能够解决虚拟机能够解决的问题 2.隔离应用依赖 3.创建应用镜像并复制 4.创建容易分发的即启即用的应用 5.docker的想法是创建软件程序可移植的轻量容器 ...
- Spring IOC 容器源码分析 - 创建原始 bean 对象
1. 简介 本篇文章是上一篇文章(创建单例 bean 的过程)的延续.在上一篇文章中,我们从战略层面上领略了doCreateBean方法的全过程.本篇文章,我们就从战术的层面上,详细分析doCreat ...
原文链接: