Heim  >  Artikel  >  php教程  >  生成要排除的号码

生成要排除的号码

PHP中文网
PHP中文网Original
2016-05-26 08:21:033974Durchsuche

生成要排除的号码

说明x代表相同的数字,A和B代表不同的数字,其中10000号为官方特服号。
1.五位的乐助号需要保留以下号段 
xxxxx、xxxxa、axxxx、xxaxx、xxxab、abxxx、axxxb、abcde、edcba
2.六位的乐助号需要保留以下号段
xxxxxx、xxxxab、xxxxxa、axxxxx、abxxxx、axxxxb、abcdef、fedcba  、ababab、xxaaxx
3.7位的乐助号需要保留以下号段
xxxxxxx、xxxxxab、xxxxxxa、axxxxxx、abxxxxx、axxxxxb、abcdefg、gfedcba、xxxaxxx
7位数以下的保留这些号段的,如果是8位以上的依次递增的关系。
*/

1. [文件]     createNoID.php 

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<?php

/*

生成要排除的号码

说明x代表相同的数字,A和B代表不同的数字,其中10000号为官方特服号。
1.五位的乐助号需要保留以下号段 
xxxxx、xxxxa、axxxx、xxaxx、xxxab、abxxx、axxxb、abcde、edcba
2.六位的乐助号需要保留以下号段
xxxxxx、xxxxab、xxxxxa、axxxxx、abxxxx、axxxxb、abcdef、fedcba  、ababab、xxaaxx
3.7位的乐助号需要保留以下号段
xxxxxxx、xxxxxab、xxxxxxa、axxxxxx、abxxxxx、axxxxxb、abcdefg、gfedcba、xxxaxxx
7位数以下的保留这些号段的,如果是8位以上的依次递增的关系。
*/
$num=6;
/**/
$t[]=$a1=x($num);
$t[]=$a2=xxab($num);
$t[]=$a3=abxx($num);
$t[]=$a4=axxxb($num);
$t[]=$a5=xxxxa($num);
$t[]=$a6=axxxxx($num);
$t[]=$a7=xxaxx($num);
$t[]=$a8=abcde($num);
$t[]=$a9=ababab($num);
$t[]=$aa=xxaaxx($num);
$t[0]=$marr=array_merges($t,$num);
print_r($marr);
//echo sql($marr,$num);

function sql($arr,$len){
	$ret=&#39;&#39;;
	foreach($arr as $v2){
		if(!empty($v2)&&strlen(intval($v2))==$len){
			$ret[]=&#39;(&#39;.$v2.",	&#39;normal&#39;,	&#39;normal&#39;,	1)";
		}
	}
	$tmp=&#39;INSERT INTO `ids` (`id`, `status`, `group_status`, `rand`) VALUES &#39;.implode(&#39;,&#39;,$ret).&#39;;&#39;;
	echo $tmp;
}

function array_merges($t,$len){
	$tmp=array();
	//$sum=0;
	foreach($t as $k=>$v){
		if(!empty($v)){
			foreach($v as $k1=>$v1){
				if(!empty($v1) && !in_array($v1,$tmp)&&strlen(intval($v1))==$len)$tmp[]=$v1;
			}
		}
	}
	return $tmp;
}
function getString($t){
	return $t;
}

function xxaaxx($n=6){
	$ret=&#39;&#39;;
	if($n%2==1){return $ret;}
	
	for($i=1;$i<10;$i++){
		$t=str_pad(&#39;&#39;,$n-4,$i);
		for($j=0;$j<10;$j++){
			$ret[]=$t.$j.$j.$t;
		}
	}

	return getString($ret); 	
}

function ababab($n=6){
	$ret=&#39;&#39;;
	if($n%2==1){return $ret;}
	$ab=ab(1);
	foreach($ab as $v){
		$t=str_pad(&#39;&#39;,$n,$v);	
		$ret[]=$t;
	}
	return getString($ret); 	
}

function abcde($n=5){
	$ret=&#39;&#39;;
	$tmp=0;
	for($i=0;$i<10;$i++){
		$k=0;
		$t=$j=&#39;&#39;;
		for($m=$i;($k<=$n);$m++){
			if(strlen($t)>$n)break;
			if($k<$n){
				$k++;
				$t.=$m;
				$j=$m.$j;
			}elseif($k==$n){
				$ret[]=$t;
				$ret[]=$j;
				break;
			}

		}
	}
	
	$ret[]=$t;
	$ret[]=$j;
	return getString($ret); 	
}
function xxaxx($n=5){
	$ret=&#39;&#39;;
	if($n%2==0){return $ret;}
	for($i=1;$i<10;$i++){
		$t=str_pad(&#39;&#39;,$n-3,$i);
		for($j=0;$j<10;$j++){
			$ret[]=$t.$j.$t;
		}
	}
	return getString($ret); 	
}
function axxxxx($n=5){
	$ret=&#39;&#39;;
	for($i=0;$i<10;$i++){
		$t=str_pad(&#39;&#39;,$n-1,$i);
		for($j=1;$j<10;$j++){
			$ret[]=$j.$t;
		}
	}
	return getString($ret); 	
}
function xxxxa($n=5){
	$ret=&#39;&#39;;
	for($i=1;$i<10;$i++){
		$t=str_pad(&#39;&#39;,$n-1,$i);
		for($j=0;$j<10;$j++){
			$ret[]=$t.$j;
		}
	}
	return getString($ret); 	
}
function axxxb($n=5){
	$ret=&#39;&#39;;
	$ab=ab(1);
	for($i=0;$i<10;$i++){
		$t=str_pad(&#39;&#39;,$n-2,$i);
		foreach($ab as $v){
			$a=substr($v,0,1);
			$b=substr($v,1,1);
			$ret[]=$a.$t.$b;
		}
	}
	return getString($ret); 	
}
function abxx($n=5){
	$ret=&#39;&#39;;
	$ab=ab(1);
	for($i=0;$i<10;$i++){
		foreach($ab as $v){
			$ret[]=str_pad($v,$n,$i,STR_PAD_RIGHT);
		}
	}
	return getString($ret);  	
}
function xxab($n=5){
	$ret=&#39;&#39;;
	$ab=ab(0);
	for($i=1;$i<10;$i++){
		foreach($ab as $v){
			$ret[]=str_pad($v,$n,$i,STR_PAD_LEFT);
		}
	}
	return getString($ret);  	
}
//xxxxx
function x($n=5){
	$ret=&#39;&#39;;
	for($i=1;$i<10;$i++){
		$ret[]=str_pad(&#39;&#39;,$n,$i);
	}
	return getString($ret); ;
}
function ab($s1=0){
	for($i=0;$i<10;$i++){
		for($j=0;$j<10;$j++){
			$ret[]=$i.$j;
		}
	}
	return $ret;
}
function ab_bak($s=1){
	if($s){
		$ret=array(&#39;12&#39;,&#39;23&#39;,&#39;34&#39;,45,56,67,78,89);
	}else{
		$ret=array(&#39;01&#39;,&#39;12&#39;,&#39;23&#39;,&#39;34&#39;,45,56,67,78,89);
	}
	return $ret;
}




?>

                               


                   

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn