php数组操作之键名比较与差集、交集赋值的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php数组操作之键名比较与差集、交集赋值的方法。分享给大家供大家参考。具体方法如下:

该实例主要实现对数组的各种常见操作。如对键名比较计算数组的差集,计算差集,给指定数组中插入一个元素,反转数组与交集赋值新的数组等。

具体代码如下:

复制代码 代码如下:
//定义回调函数
function key_compare_func($key1,$key2)
{
  if($key1==$key2)         //如果两参数相等
  return 0;          //返回0
  else if($key1>$key2)        //如果$key1>$key2
  return 1;          //返回1
  else           //如果$key1<$key2
  return -1;          //返回-1
}
//分别定义两个数组
$array1=array('blue'=>1,'red'=>2,'green'=>3,'purple'=>4);
$array2=array('green'=>5,'blue'=>6,'yellow'=>7,'cyan'=>8);
//用回调函数对键名比较计算数组的差集
$result=var_dump(array_diff_ukey($array1,$array2,'key_compare_func'));
print_r($result);
//输出比较结果
        
$array1=array("a"=>"green","red","blue","red");     //定义数组1
$array2=array("b"=>"green","yellow","red");     //定义数组2
$result=array_diff($array1,$array2);       //计算差集
print_r($result);           //输出比较结果

//
$result=array_fill(5,6,'banana');    //为数组$a从第5个元素开始添加6个banana
print_r($result);       //输出结果
//
function odd($var)
{
  return($var%2==1);     //如果参数为奇数,返回true,否则返回false
}
function even($var)
{
  return($var%2==0);     //如果参数为偶数,返回true,否则返回false
}
//分别定义两个数组
$array1=array("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5);
$array2=array(6,7,8,9,10,11,12);
echo "过滤奇数:n";
print_r(array_filter($array1,"odd"));   //过滤数组1中的奇数
echo "过滤偶数:n";
print_r(array_filter($array2,"even"));   //过滤数组2中的偶数
//
$trans=array("a"=>1,"b"=>2,"c"=>3);     //定义数组
$result=array_flip($trans);       //反转数组
print_r($result);         //输出反转后的数组
//
$array1=array("a"=>"green","b"=>"brown","c"=>"blue","red");
$array2=array("a"=>"green","yellow","red");
$result_array=array_intersect_assoc($array1,$array2);  //交集赋值到$result_array
print_r($result_array);        //输出结果数组

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

浅析PHP开发规范

基本约定 源文件 代码使用<?php开头,忽略闭合标签?> 文件格式必须是无BOM UTF-8格式 一个文件只声明一种类型,如class和interfa...

PHP二分查找算法的实现方法示例

本文实例讲述了PHP二分查找算法的实现方法。分享给大家供大家参考,具体如下: 二分查找法需要数组是一个有序的数组 假设我们的数组是一个递增的数组,首先我们需要找到数组的中间位置. 1....

php强制下载文件函数

本文实例为大家分享了php强制下载文件函数,供大家参考,具体内容如下 public function down() { $id = $this->_get('id');...

PHP中fwrite与file_put_contents性能测试代码

function microtimeFloat() {    list($usec,$sec) = explode(" ", microtime());&n...

php实现的RSS生成类实例

本文实例讲述了php实现的RSS生成类。分享给大家供大家参考。具体如下: class RSS { var $title; var $link; var $description...