PHP处理数组常用函数汇总

PHP中对数组的处理是最常用的必备技能之一。自己总结了一下几个最常用的处理数组的高级函数。

1. array_merge()

合并数组,将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面,最后返回一个数组。
关联数组:有相同的字符串键名时,则该键名后面的值将覆盖前一个值
索引数组:后面的值将不会覆盖原来的值,而是附加到后面

array array_merge (array array1 array2…,arrayN) 
例子:

<?php 
$a = array("a","b","c"); 
$b = array("1","2","3"); 
$c = array_merge($a, $b); 
print_r($c); 
 
// 输出结果
// Array ( [0] => a [1] => b [2] => c [3] => 1 [4] => 2 [5] => 3 ) 
?>

2. array_merge_recursive()

功能同array_merge(),只不过遇到相同值时处理方式不同
关联数组:有相同的字符串键名时,则该键值变成一个数组,将相同键值放在一个数组里

例子:

<?php 
$a = array("a" => "123", "b" => "yes"); 
$b = array("c" => "no", "a" => "aaa"); 
$d = array_merge_recursive($a, $b); 
print_r($d); 
 
// 输出结果 
// Array ( [a] => Array ( [0] => 123 [1] => aaa ) [b] => yes [c] => no ) 
?> 

3. array_slice()

拆分索引数组,类似于substr()的用法, offset开始切,切length这么多个, 不设置length则是切到尾

array array_slice (array array, int offset[,int length]) 
例子:

<?php 
 
$a = array("A", "B", "C", "D", "E", "F", "G"); 
$b = array_slice($a, 3); 
print_r($b); 
 
// 输出 
// Array ( [0] => D [1] => E [2] => F [3] => G ) 
?> 

4. array_multisort()

返回排序数组:

array_multisort(array1,sorting order,sorting type,array2,array3...)

这个函数功能很强大,有几个用法:

直接进行排序

<?php
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);

// Array ( [0] => Cat [1] => Dog ) Array ( [0] => Missy [1] => Fido )
?>

设置排序方式进行排序

<?php
/* 设置倒序正序 */
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,SORT_ASC,$a2,SORT_DESC);
print_r($a1);
print_r($a2);

// Array ( [0] => Cat [1] => Dog [2] => Dog ) Array ( [0] => Missy [1] => Pluto [2] => Fido )

/* 设置倒序正序,排序标准 */
$a1=array(1,30,15,7,25);
$a2=array(4,30,20,41,66);
$num=array_merge($a1,$a2);
array_multisort($num,SORT_DESC,SORT_NUMERIC);
print_r($num);

// Array ( [0] => 66 [1] => 41 [2] => 30 [3] => 30 [4] => 25 [5] => 20 [6] => 15 [7] => 7 [8] => 4 [9] => 1 )
?>

二维数组根据某键值进行排序

<?php
/* time为要排序字段, SORT_DESC降序排列, $all要排序的数组 */
foreach ($all as $k => $v)
{
    $time[] = $v['time'];
}
array_multisort($time, SORT_DESC, $all);
?>

5. array_intersect()和array_intersect_assoc()

array_intersect()返回一个保留了键的数组,这个数组只由第一个数组中出现的且在其他每个输入数组中都出现的值组成。
array_intersect_assoc()返回一个在第一个数组中出现,且在所有其他输入数组中也出现的键/值对组成的数组。
应用场景: 共同好友推荐

<?php 
$a = array("Kevin","Mike","Jone"); 
$b = array("Jack","Kevin","Anna"); 
$c = array("Steven","Json","Kevin"); 
$output = array_intersect($a, $b, $c); 
print_r($output); 
 
// output 
// Array ( [0] => Kevin ) 
?> 

时间: 2024-12-03 07:09:33

PHP处理数组常用函数汇总的相关文章

JavaScript数组操作函数汇总_javascript技巧

js中数组操作函数还是非常多的,今天忽然想到来总结一下,也算是温故而知新吧.不过不会针对每个办法都进行一下总结,只是针对一些比较常用的做个备注一下. 这里总结到的 js 数组操作函数有:push,pop,join,shift,unshift,slice,splice,concat(1)push 和 pop这两个函数都是对数组从尾部进行压入或弹出操作.push(arg1,arg2,...)可以每次压入一个或多个元素,并返回更新后的数组长度.注意如果参数也是数组的话,则是将全部数组当做一个元素压入到

非常实用的PHP常用函数汇总_php技巧

本文实例总结了一些在php应用开发中常用到的函数,这些函数有字符操作,文件操作及其它的一些操作了,分享给大家供大家参考.具体如下: 1.PHP加密解密 PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过可逆解密字符串,该函数使用了base64和MD5加密和解密. 复制代码 代码如下: function encryptDecrypt($key, $string, $decrypt){     if($decrypt){         $decrypted = rtrim(m

ASP中的ArrayList类[数组常用函数]

ASP中的ArrayList类[数组常用函数] 使用方法如下:  程序代码 <% dim arr : set arr=new ArrayList arr.add "a" : arr.add "b" : arr.add "c" Response.Write arr.count & "<br>" for i=0 to arr.count-1     Response.Write arr.item(i) &

ThinkPHP字符串函数及常用函数汇总_php实例

本文汇总了ThinkPHP的字符串处理函数及其他一些常用函数,可供开发人员参考使用.详情如下: get_client_ip() 获取客户端的IP地址 msubstr($str, $start=0, $length, $charset="utf-8″, $suffix=true) $str:要截取的字符串 $start=0:开始位置,默认从0开始 $length:截取长度 $charset="utf-8″:字符编码,默认UTF-8 $suffix=true:是否在截取后的字符后面显示省略

oracle常用函数汇总

以下是对oracle中的常用函数进行了汇总介绍,需要的朋友可以过来参考下   一.运算符算术运算符:+ - * / 可以在select 语句中使用 连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= = != < <= like between is null in 逻辑运算符:not and or 集合运算符: intersect ,union, union all, minus 要求:对应集合的列数和数据类型相同     

mysql常用函数汇总(分享)

以下是对mysql中的常用函数进行了汇总介绍.需要的朋友可以过来参考下   一.数学函数ABS(x)   返回x的绝对值 BIN(x)   返回x的二进制(OCT返回八进制,HEX返回十六进制) CEILING(x)   返回大于x的最小整数值 EXP(x)   返回值e(自然对数的底)的x次方 FLOOR(x)   返回小于x的最大整数值 GREATEST(x1,x2,...,xn)返回集合中最大的值 LEAST(x1,x2,...,xn)      返回集合中最小的值 LN(x)      

PHP执行linux命令常用函数汇总_php实例

一般情况下,很少会用php去执行linux命令,不过特殊情况下,你也许会用到这些函数.以前我知道有二个函数可以执行linux命令,一个是exec,一个是shell_exec.其实有很多的,结合手册内容,介绍以下6个函数. 1,exec函数 <?php $test = "ls /tmp/test"; //ls是linux下的查目录,文件的命令 exec($test,$array); //执行命令 print_r($array); ?> 返回结果如下: [root@krlcgc

oracle常用函数汇总(分享)_oracle

一.运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= = != < <= like between is null in逻辑运算符:not and or 集合运算符: intersect ,union, union all, minus 要求:对应集合的列数和数据类型相同     查询中不能包含long 列     列的标签是第一个集合的标签     使用orde

SQL的基本命令和几个常用函数汇总

函数 --创建对象(表.视图.存储过程.函数)命令]CREATE TABLE/VIEW/PROCEDURE/FUNCTION--创建表CREATE TABLE tabTestVB (VbName varchar(10),value numeric(10))GOCREATE TABLE tabTestVB1(VbName varchar(10),value1 numeric(10))GO--插入数据(两种方式)INSERT INTO tabTestVB(VbName,value)SELECT 'A