php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
本文实例总结了php常用数组array函数。分享给大家供大家参考,具体如下:
array_combine
功能:用一个数组的值作为新数组的键名,另一个数组的值作为新数组的值
案例:
<?php
$a = array("one","two","three");
$b = array("一","二","三");
$c = array_combine($a,$b);
print_r($c);
/**结果
*Array ( [one] => 一 [two] => 二 [three] => 三 )
*/
array_chunk
功能:拆分数组成多个数组
<?php
$input_array = array("a"=>"apple","b"=>"blue","c","d","e");
echo "<pre>";
print_r(array_chunk($input_array, ));
print_r(array_chunk($input_array, ,True));
echo "</pre>";
/**结果
Array
(
[0] => Array
(
[0] => apple
[1] => blue
)
[1] => Array
(
[0] => c
[1] => d
)
[2] => Array
(
[0] => e
)
)
Array
(
[0] => Array
(
[a] => apple
[b] => blue
)
[1] => Array
(
[0] => c
[1] => d
)
[2] => Array
(
[2] => e
)
)
*/
array_count_values
功能:统计数组中值出现的次数
<?php
$input_array = array("a"=>"apple","b"=>"blue","c","d","e");
echo "<pre>";
print_r(array_count_values($input_array));
echo "</pre>";
/**结果
Array
(
[apple] => 1
[blue] => 1
[c] => 1
[d] => 1
[e] => 1
)
*/
array_diff
功能:第一个数组中去掉第二个数组中有的数据,返回剩下的内容作为结果
<?php
$array1 = array("a"=>"apple","b"=>"blue","c","d","e");
$array2 = array("apple","c","d","f");
$result = array_diff($array1, $array2);
$result2 = array_diff($array2, $array1);
echo "<pre>";
print_r($result);//数组1中去掉数组2中剩下的
print_r($result2);//数组2中去掉数组1中剩下的
echo "</pre>";
/**结果
Array
(
[b] => blue
[2] => e
)
Array
(
[3] => f
)
*/
array_map
功能:将回调函数执行到数组中
<?php
//定义回调函数
function cube($n){
return ($n*$n*$n);
}
$a = array(,,,,);
$b = array_map("cube",$a);
echo "<pre>";
print_r($b);
echo "</pre>";
/**结果
Array
(
[0] => 1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)
*/
array_merge
功能:合并一个或多个数组
说明:如果后面有键名相同的会覆盖掉前面的内容,键名为数字的会添加到后面
<?php
$array1 = array("color"=>"red",,);
$array2 = array("a","b","color"=>"green","shape"=>"trapezoid",);
$result1 = array_merge($array1,$array2);
$result2 = array_merge_recursive($array1,$array2);
echo "<pre>";
print_r($result1);
print_r($result2);
echo "</pre>";
/**结果
Array
(
[color] => green
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)
Array
(
[color] => Array
(
[0] => red
[1] => green
)
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)
*/
array_pop
功能:剔除数组最后一个元素,返回被剔除的元素内容
<?php
$stack = array("orange","banana","apple","");
$last = array_pop($stack);
echo "<pre>";
print_r($stack);
print_r($last);
echo "</pre>";
/**结果
Array
(
[0] => orange
[1] => banana
[2] => apple
)
1
*/
array_push
功能:将一个多个单元压入数组末尾,返回之后的数组个数
<?php
$stack = array("orange","banana");
$count = array_push($stack,"apple","red","blue");
echo "<pre>";
print_r($stack);
print_r($count);
echo "</pre>";
/**结果
Array
(
[0] => orange
[1] => banana
[2] => apple
[3] => red
[4] => blue
)
5
*/
array_rand
功能:获取随机的键名
<?php
$input = array("orange","banana","apple","red","blue");
$rand = array_rand($input,);;
print_r($rand);
$rand = array_rand($input,);
print_r($rand);
/**结果
Array
(
[0] => 1
[1] => 4
)
Array
(
[0] => 0
[1] => 1
[2] => 3
)
*/
array_search
功能:查询数组中的内容,返回键值,如果有多个匹配,返回第一个匹配的内容
<?php
$array = array("blue"=>"b","red"=>"r","green","r");
$key = array_search('b', $array);
echo $key;
echo "<br>";
$key = array_search('r', $array);
echo $key;
echo "<br>";
/**结果
blue
red
*/
array_shift 功能:移除开头的元素,与array_pop相反
<?php
$fruit = array("milk","orange","banana","apple");
$top = array_shift($fruit);
print_r($top);
echo "<br>";
print_r($fruit);
/**结果
milk
Array ( [0] => orange [1] => banana [2] => apple )
*/
array_unique
功能:去除数组重复的元素,保留第一个出现的,包括键名和值
<?php
$input = array("a"=>"green","red","b"=>"green","blue","c"=>"red");
$result = array_unique($input);
print_r($result);
echo "<br>";
print_r($input);
/**结果
Array ( [a] => green [0] => red [1] => blue )
Array ( [a] => green [0] => red [b] => green [1] => blue [c] => red )
*/
array_slice
功能:从数组中取出部分元素
<?php
$input = array("a","b","c","d","e");
$output = array_slice($input,);//第二个参数没有时,表示取到最后一个元素
print_r($output);
echo "<br>";
$output = array_slice($input,-,);//第二个参数是正数时,表示个数;倒数第一个是-1,倒数第二个是-2
print_r($output);
echo "<br>";
$output = array_slice($input,,);
print_r($output);
echo "<br>";
$output = array_slice($input,,-);//第二个参数是负数时,表示位置,取到哪一位,不包括本身
print_r($output);
echo "<br>";
$output = array_slice($input,,-,true);//第三个参数为true时,保留原有的键值
print_r($output);
echo "<br>";
/**结果
Array ( [0] => c [1] => d [2] => e )
Array ( [0] => d )
Array ( [0] => a [1] => b [2] => c )
Array ( [0] => c [1] => d )
Array ( [2] => c [3] => d )
*/
count
功能:返回数组元素个数,元素为数组的算一个
<?php
$input = array("a","b","c",array("d","e"));
$count = count($input);
echo $count;
echo "<br>";
$input = array("a","b","c","d","e");
$count = count($input);
echo $count;
/**结果
4
5
*/
in_array
功能:检验某值是否存在数组中,有返回True,没有返回False
<?php
$os_list = array("Mac","NT","Irix","Linux");
if(in_array("Irix",$os_list)){
echo "当前操作系统列表中存在Irix";
}else{
echo "当前操作系统列表中不存在Irix";
}
echo "<br>";
if(in_array("mac",$os_list)){
echo "当前操作系统列表中存在mac";
}else{
echo "当前操作系统列表中不存在mac";
}
echo "<br>";
/**结果
当前操作系统列表中存在Irix
当前操作系统列表中不存在mac
*/
list
功能:将数组中的信息赋值给多个变量
<?php
$info = array("red","blue","green");
list($flag,$sky,$grassland) = $info;
echo "$flag,$sky,$grassland";
echo "<br>";
list($flag,,$grassland) = $info;
echo "$flag,$grassland";
echo "<br>";
list(,,$grassland) = $info;
echo "$grassland";
echo "<br>";
/**结果
red,blue,green
red,green
green
*/
shuffle
功能:打乱数组
<?php
$numbers = range(,);//生成一个随机数组
print_r($numbers);
echo "<br/>";
shuffle($numbers);//打乱数组
print_r($numbers);
/**结果
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Array ( [0] => 4 [1] => 1 [2] => 5 [3] => 2 [4] => 3 )
*/
array_keys
功能:获取数组的键名,第二个参数可以指定获取某个元素
<?php
$array = array(=>,"color"=>"red");
print_r(array_keys($array));
echo "<br>";
$array = array("blue","red","green","blue","blue");
print_r(array_keys($array,"blue"));
echo "<br>";
$array = array("color"=>array("blue","red","green"),"size"=>array("small","medium","large"));
print_r(array_keys($array));
echo "<br>";
/**结果
Array ( [0] => 0 [1] => color )
Array ( [0] => 0 [1] => 3 [2] => 4 )
Array ( [0] => color [1] => size )
*/
array_reverse
功能:获取数组的反向
<?php
$input = array("php",3.0,array("green","red"));
$result = array_reverse($input); //打乱键名
$result_keyed = array_reverse($input,TRUE);//保留键名
print_r($result);
print_r($result_keyed);
/**结果
Array
(
[0] => Array
(
[0] => green
[1] => red
)
[1] => 3
[2] => php
)
Array
(
[2] => Array
(
[0] => green
[1] => red
)
[1] => 3
[0] => php
)
*/
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】的更多相关文章
- PHP常用数组(Array)函数整理
整理了一份PHP开发中数组操作大全,包含有数组操作的基本函数.数组的分段和填充.数组与栈.数组与列队.回调函数.排序.计算.其他的数组函数等. 一.数组操作的基本函数 数组的键名和值 array_va ...
- 【PHP】PHP常用数组(Array)函数整理
整理了一份PHP开发中数组操作大全,包含有数组操作的基本函数.数组的分段和填充.数组与栈.数组与列队.回调函数.排序.计算.其他的数组函数等. 一.数组操作的基本函数 数组的键名和值 array_va ...
- C语言数组和函数实例练习(一)
C语言的数组和函数部分的知识,在语法上和Java语法是有所相似的,这里只通过实例总结一些自己感觉需要理解的部分知识. 1.数组 数组中的元素具有相同的数据类型:数组一旦创建,不能被改变:数组中元素在内 ...
- PHP中的数组(二)常用数组处理函数
数组的相关处理函数 一.数组键/值操作有关的函数 1.array_values() 无论是关联的还是索引的返回的都是索引数组 <?php $lamp=array(&quo ...
- R语言数组array函数
数组是一个可以在两个以上的维度存储数据的R数据对象.例如 - 如果创建尺寸(2,3,4)的数组,那么创建4个矩形矩阵每2行3列.数组只能存储数据类型. 使用 array()函数创建数组.它需要向量作为 ...
- C语言数组和函数实例练习(二)
1.C语言中不允许函数的嵌套定义,但可以使用函数的嵌套调用. 例1:输入4个整数,找出其中最大的数. #include <stdio.h> #include <stdlib.h> ...
- PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
/*常用的字符串输出函数 * * echo() 输出字符串 * print() 输出一个或多个字符串 * die() 输出一条信息,并退出当前脚本 * printf() 输出格式化字符串 * spri ...
- 六个比较好用的php数组Array函数
1. array_column 返回输入数组中某个单一列的值.2. array_filter 用回调函数过滤数组中的元素.3. array_map 将用户自定义函数作用到给定数组的每个值上,返回新的值 ...
- JS常用数组方法及实例
1.join(separator):将数组的元素组起一个字符串,以separator为分隔符 ,,,,]; var b = a.join("|"); //如果不用分隔符,默认逗号隔 ...
随机推荐
- Babel presets stage
在一些新框架的代码中,常基于es6/7标准来书写代码.鉴于这些标准被没有被浏览器广泛支持,我们一般使用babel来将使用e6/7标准书写的代码降级编译(或者说转译)为浏览器可解析的es3/5代码. 以 ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署
前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...
- ELK-log4j2异步输出+logstash
1.pom.xml配置文件 <dependency> <groupId>log4j</groupId> <artifactId>log4j</ar ...
- leetcode — flatten-binary-tree-to-linked-list
import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Source : https://o ...
- spring原理案例-基本项目搭建 03 创建工程运行测试 spring ioc原理实例示例
下面开始项目的搭建 使用 Java EE - Eclipse 新建一 Dynamic Web Project Target Runtime 选 Apache Tomcat 7.0(不要选 Apache ...
- Spring Boot 2.x (十二):Swagger2的正确玩儿法
Swagger2简介 简单的来说,Swagger2的诞生就是为了解决前后端开发人员进行交流的时候API文档难以维护的痛点,它可以和我们的Java程序完美的结合在一起,并且可以与我们的另一开发利器Spr ...
- Perl多线程(2):数据共享和线程安全
线程数据共享 在介绍Perl解释器线程的时候一直强调,Perl解释器线程在被创建出来的时候,将从父线程中拷贝数据到子线程中,使得数据是线程私有的,并且数据是线程隔离的.如果真的想要在线程间共享数据,需 ...
- Java小工具 根据文本批量修改文件名
功能 可以根据使用路径修改文件名,已经测试,可以成功运行 思路 先是读取到txt文本文件,之后使用String的spilt进行分割,每一行的格式为 旧名字 新名字,中间的空格可以使用|或者其他字符代替 ...
- 用node.js express设置路径后 子路径下的页面访问静态资源路径出问题
在routes/news_mian.js 设置了访问news_main.html 的路径 '/',通知设置一个访问news-page.html的子路径'/newspage'子路径.但是在访问loacl ...
- SQL Server中几种遍历方式比较
SQL遍历解析 在SQL的存储过程,函数中,经常需要使用遍历(遍历table),其中游标.临时表等遍历方法很常用.面对小数据量,这几种遍历方法均可行,但是面临大数据量时,就需要择优选择,不同的遍历方法 ...