您的位置:首页 > 编程语言 > PHP开发

本人开发中的一些笔记(三)--- 个人一些比较少用的php函数

2016-01-27 18:11 627 查看
本人在php开发过程中由于某种业务功能需要而用到的函数,平时比较少用到:

1、array_filter()函数

array_filter() 函数用回调函数过滤数组中的值。该函数把输入数组中的每个键值传给回调函数。如果回调函数返回
true,则把输入数组中的当前键值返回结果数组中。数组键名保持不变。

使用场景:

若我们需将某个数组根据自定义要求进行过滤时,可自定义过滤函数,如:

过滤值小于1的

<?php
function myfunction($v){
if($v>1){
return true;
}
return false;
}
$a = array(0=>'0',1=>'1',2=>'2');
print_r(array_filter($a,"myfunction"));
?>

当回调为null时,可过滤掉数组中为值为null,false和0的元素。

2、array_diff()函数

array_diff() 函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。在返回的数组中,键名保持不变。

如,若本来有一个旧的数组,新增新的元素后提交,要得到增加的元素:

<?php
$datalist = $old = array("1"=>"old1","2"=>"old2");
$datalist['3'] = "new1";
print_r(array_d($datalist,$old));
?>


3、array_diff_assoc() 函数

array_diff_assoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。

该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名和键值。
例子:

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_diff_assoc($a1,$a2);
print_r($result);
?>
输出:

Array([a]=>red [b]=>green [c]=>blue [d]=>yellow)

(后续有补充继续添加)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: