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);        //输出结果数组

时间: 2024-11-05 12:32:06

php数组操作 键名比较 差集 交集赋值的相关文章

php二维数组雷同键名相加

  php二维数组相同键名相加 Array ( [uid] => 19 [pid] => Array ( [0] => 91 [1] => 81 ) [price] => Array ( [0] => 6 [1] => 14 ) [pnum] => Array ( [0] => 1 [1] => 1 ) ) 求相同键名的值相加如(price 的相加结果) 数组条数不确定 ------解决方案-------------------- $ar = A

php 获取数组值 数组颠倒 键名操作实例

*/ $array=array("size"=>"xl","color"=>"gold");   //定义一个数组 print_r(array_values($array));      //输出数组所有的值 /* 定义和用法 array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名. 语法 array_values(array) */ $fruit=array('a'=>'app

php二维数组用键名分组相加实例函数_php实例

本文介绍一篇关于php 二维数组以某一键名进行分组相加的实例程序,如果是从数据库里取数据的时候大可以SELECT SUM(t_value),t_id FROM t_table GROUP BY t_id,但是如果是在php程序中处理类似的问题就稍微麻烦点了,这里给个函数就是处理类似的问题 复制代码 代码如下: <?php /* 函数功能:对二维数组以某一键名进行分组相加,返回新的二维数组  * 参数说明:$arr-源数组:$new_arr-相加后得到的新数组:$target_key-要分组的键名

php array_keys 返回数组的键名_php实例

array_keys返回数组中部分的或所有的键名 说明 array array_keys ( array $array [, mixed $search_value [, bool $strict = false ]] ) array_keys() 返回 $array 数组中的数字或者字符串的键名. 如果指定了可选参数 search_value,则只返回该值的键名.否则 $array 数组中的所有键名都会被返回. 参数详解 参数 描述 array 必需.一个数组,包含了要返回的键. search

PHP数组关于数字键名的问题

以下是对PHP数组数字键名的几点总结: 键名长度只能在 int 长度范围内,超过int 范围后将会出现覆盖等混乱情况 在键名长度为 int 范围内存取值时,PHP会强制将数字键名转换为 int 数值型 数字键名长度大于19位时,将变成 0 键名正常长度时,字符串或数值类型一样 $i = 126545165; $arr['126545165'] = 'abc'; $arr[126545165] = 'uio'; var_dump($arr); echo ''; var_dump(isset($ar

php数组键名技巧小结

 这篇文章主要介绍了php数组键名技巧小结,分析了php数组键名常见的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文较为详细的总结了php数组键名的技巧.分享给大家供大家参考.具体分析如下: 1.$arr[true] 等价于 $arr[1]:$arr[false] 等价于 $arr[0]. 2.使null做为键名,相当于创建或覆盖一个$arr[null],可以使用$arr[null]或$arr[""]来访问. 3.使用带小数点的数字作为键名时,键名会自动截取整数部分

php数组函数序列之array_flip() 将数组键名与值对调_php技巧

array_flip() 定义和用法 array_flip() 函数将使数组的键名与其相应值调换,即键名变成了值,而值变成了键名. array_flip() 函数返回一个反转后的数组,如果同一值出现了多次,则最后一个键名将作为它的值,所有其他的键名都将丢失. 如果原数组中的值的数据类型不是字符串或整数,函数将报错. 语法 array_flip(array)参数 描述 array 必需.规定输入的数组. 例子 复制代码 代码如下: <?php $a=array(0=>"Dog"

php数组键名技巧小结_php技巧

本文较为详细的总结了php数组键名的技巧.分享给大家供大家参考.具体分析如下: 1.$arr[true] 等价于 $arr[1]:$arr[false] 等价于 $arr[0]. 2.使null做为键名,相当于创建或覆盖一个$arr[null],可以使用$arr[null]或$arr[""]来访问. 3.使用带小数点的数字作为键名时,键名会自动截取整数部分作为键名.如$arr[123.45]=5,你使用$arr[123.45]或$arr[123]均可以取得键值:用foreach遍历时,

php数组操作函数(合并,拆分,追加,查找,删除等)

PHP数组相关知识学习,要学习的主要有以下几点: 1.了解数组的感念: 2.掌握声明一维数组和二维数组的方法: 3.掌握如何输出数组: 4.掌握遍历数组的方法: 5.了解如何合并数组: 6.掌握进行字符串与数组之间的转换方法: 7.熟悉如何统计数组元素个数: 8.掌握丢数组排序的方法: 1. 合并数组 array_merge()函数将数组合并到一起,返回一个联合的数组.所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加.其形式为: array array_merge (arr