您好,欢迎访问一九零五行业门户网

php数组比较实现查找连续数的方法,php数组查找_PHP教程

php数组比较实现查找连续数的方法,php数组查找本文实例讲述了php数组比较实现查找连续数的方法。分享给大家供大家参考。具体如下:
$data = array();$data[]= array(01 ,02, 18 , 29 , 31 , 32);$data[]= array(02 ,09, 11 , 22 , 24 , 27);$data[]= array(07 ,16, 26 , 27 , 29 , 31);$data[]=array(04, 05, 07, 10, 13, 25);$data[]=array(02, 04, 05, 08, 19, 22);$data[]=array(03, 04, 15, 25, 26, 30);$data[]=array(01, 03, 06, 12, 16, 32);$data[]=array(01, 05, 14, 17, 22);// 判断表格中3个以上的连续 function checkall($sourcearr2d) { $count = sizeof($sourcearr2d); for($i=0; $i0) { check_v($sourcearr2d, $i);// 找寻竖直方向 check_l($sourcearr2d, $i);// 找寻/方向 check_r($sourcearr2d, $i);// 找寻方向 } }}// 判断水平方向$h = array();// 保存水平方向上的搜寻结果function check_h($arr, $rownum) { //sort($arr, sort_numeric); global $h; $flag = false; for($i=2; $i<6; $i++){ if( $arr[$i-2]==$arr[$i]-2 ){ // 因为数组内数字不重复且有序故可取巧 if(!$flag) { $h[$rownum] = array($arr[$i-2], $arr[$i-1], $arr[$i]); $flag = true; }else{ array_push($h[$rownum], $arr[$i]); } } }}// 判断竖直方向$v = array();// 保存竖直方向上的搜寻结果function check_v($sourcearr2d, $rownum) { global $v; for($i=0; $i<6; $i++){ $val = $sourcearr2d[$rownum][$i]; if( in_array($rownum...$val, $v) ){ continue; } if( in_array($val,$sourcearr2d[$rownum-1]) && in_array($val,$sourcearr2d[$rownum+1]) ){ array_push($v, ($rownum-1)...$val, $rownum...$val, ($rownum+1)...$val); $tmp = $rownum + 2; while( ($tmp < sizeof($sourcearr2d)) && in_array($val, $sourcearr2d[$tmp]) ){ array_push($v, $tmp...$val); $tmp++; } } }}// 判断/方向$l = array();// 保存/方向上的搜寻结果function check_l() {}// 判断方向$r = array();// 保存方向上的搜寻结果function check_r() {}// 结束定义,开始应用checkall($data);echo//水平方向上的找寻:print_r($h);echo//竖直方向上的找寻:print_r($v);echo//方向上的找寻:print_r($l);echo//方向上的找寻:print_r($r);
希望本文所述对大家的php程序设计有所帮助。
http://www.bkjia.com/phpjc/1039202.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/1039202.htmltecharticlephp数组比较实现查找连续数的方法,php数组查找 本文实例讲述了php数组比较实现查找连续数的方法。分享给大家供大家参考。具体如下:...
其它类似信息

推荐信息