来源:其他fizzbuzzwhizz:http://www.oschina.net/code/snippet_1414453_35450; 正则复习phpclass,写的不太好,抛砖引玉。 无 class numbergame{private $str=startbr;private $num=0;private $fnum=0;private $snumarr=array();private $arr_key=array()
来源:其他fizzbuzzwhizz :http://www.oschina.net/code/snippet_1414453_35450;
正则复习 php class,写的不太好,抛砖引玉 。
class numbergame{ private $str=start
; private $num=0; private $fnum=0; private $snumarr=array(); private $arr_key=array(); function __construct($fnum,$num,$snumarr){ if($fnum>=1 && $num>$fnum && is_array($snumarr) && count($snumarr)>0){ //$this->fnum=$fnum; //$this->num=$num; $this->snumarr=$snumarr; for($i=$fnum;$iarr_key=array_keys($snumarr); $typeb = strpbrk($i, current($this->arr_key) )?true:false; if($typeb){ $this->str.= current($snumarr). (.$i.)
; }else{ $this->rule($i); } } } } function rule($i){ $str=; for($j=0;$jsnumarr);$j++){ $key=$this->arr_key[$j]; //var_dump($key); if(is_int($i/$key)){ $str.=$this->snumarr[$key]; } } if(empty($str)){ $str=$i.
; }else{ $str.= (.$i.)
; } $this->str.=$str; } function answer(){ return $this->str; } }$snumarr=array('3'=>'fizz','5'=>'buzz','7'=>'whizz');$ng=new numbergame(1,100,$snumarr);echo $ng->answer();