PHP自定义函数实现数组比较功能示例

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP自定义函数实现数组比较功能。分享给大家供大家参考,具体如下:

<?php
 //数组使用标准比较运算符这样比较的
 function standard_array_compare($op1,$op2)
 {
 if(count($op1) < count($op2)) {
  return -1; //$op1 < $op2
 } else if(count($op1) > count($op1)) {
  return 1; //$op1 > op2
 }
 foreach ($op1 as $key => $val) {
  if(!array_key_exists($key,$op2)) {
  return null;
  } else if ($val < $op2[$key]) {
  return -1;
  } else if ($val > $op2[$key]) {
  return 1;
  }
 }
 return 0;
 }
 $arr1 = array(1,2,3,4,5);
 $arr2 = array(1,2,3,4,5);
 $arr3 = array(2,3,4,5,6);
 $arr4 = array(0,1,2,3,4);
 var_dump(standard_array_compare($arr1,$arr2));
 echo "<br/>";
 var_dump(standard_array_compare($arr1,$arr3));
 echo "<br/>";
 var_dump(standard_array_compare($arr1,$arr4));
?>

运行结果:

int(0)
int(-1)
int(1)

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

php array_intersect比array_diff快(附详细的使用说明)

如果要求数组 $a 与数组 $b 的差集的个数,应该使用 count($a) - count(array_intersect($a, $b)),而不要用 count(array_diff...

sphinx增量索引的一个问题

但最近发现增量的总是搜索不到,今天看了下运行日志,有如下提示: [Sun Apr 17 19:30:01.876 2011] [ 3400] WARNING: rotating inde...

PHP数组传递是值传递而非引用传递概念纠正

在调用函数时通过将PHP数组作为实参赋给形参,在函数中修改,并不会影响到数组本身。 说明此过程中的传递为值传递,数组变量并非是指向此数组本身的引用,PHP数组本身以值的形式存在,同时形参...

php封装的图片(缩略图)处理类完整实例

本文实例讲述了php封装的图片(缩略图)处理类。分享给大家供大家参考,具体如下: <?php //图片处理工具类 class Image{ //属性 p...

PHP引用的调用方法分析

本文实例讲述了PHP引用的调用方法。分享给大家供大家参考,具体如下: 示例1: function test($arr){} echo test(&$arr); 示例2:...