请问如何有效判断几组数据范围是否有交集5000~7000 2000~6000 8000~9000 4000~8500 5000~7000 请问php中这几组随机的数据怎么样更有效的判断是否有重复? 期望值是 2000~4000 4000~5000 5000~6000 6000~7000 7000~8500 8500~9000 php 分享到: ------解决方案--------------------只需要判别是否包含,可以写成函数 还是沿袭开始的思路$a = array( array(5000, 7000), array(2000, 6000), array(8000, 9000), array(4000, 8500), array(5000, 7000), ); var_dump(foo($a)); //bool(false) $a = array( array(5000, 7000), array(6000, 8200), array(8000, 9000) ); var_dump(foo($a)); //bool(false) $a = array( array(5000, 5500), array(6000, 6500), array(8000, 8500) ); var_dump(foo($a)); //bool(true) function foo($a) { $r = array_unique(call_user_func_array('array_merge', $a)); sort($r); foreach($a as $v) { if(array_search($v[0], $r) != array_search($v[1], $r) - 1) return false; } return true; }로그인 후 복사