php猜单词游戏
直接复制本地运行就可以了
<?php session_start(); header("Content-type:text/html;charset=utf-"); $url='http://'$_SERVER['HTTP_HOST']$_SERVER['PHP_SELF']; functionget_word(){ $wordtext="Redistributionanduseinsourceandbinaryforms,withorwithoutmodification,arepermittedprovidedthatthefollowingconditionsaremet:Redistributionsofsourcecodemustretaintheabovecopyrightnotice,thislistofconditionsandthefollowingdisclaimerRedistributionsinbinaryformmustreproducetheabovecopyrightnotice,thislistofconditionsandthefollowingdisclaimerinthedocumentationand/orothermaterialsprovidedwiththedistributionNeitherthenameofYiiSoftwareLLCnorthenamesofitscontributorsmaybeusedtoendorseorpromoteproductsderivedfromthissoftwarewithoutspecificpriorwrittenpermissionTHISSOFTWAREISPROVIDEDBYTHECOPYRIGHTHOLDERSANDCONTRIBUTORSASISANDANYEXPRESSORIMPLIEDWARRANTIES,INCLUDING,BUTNOTLIMITEDTO,THEIMPLIEDWARRANTIESOFMERCHANTABILITYANDFITNESSFORAPARTICULARPURPOSEAREDISCLAIMEDINNOEVENTSHALLTHECOPYRIGHTOWNERORCONTRIBUTORSBELIABLEFORANYDIRECT,INDIRECT,INCIDENTAL,SPECIAL,EXEMPLARY,ORCONSEQUENTIALDAMAGES(INCLUDING,BUTNOTLIMITEDTO,PROCUREMENTOFSUBSTITUTEGOODSORSERVICES;LOSSOFUSE,DATA,ORPROFITS;ORBUSINESSINTERRUPTION)HOWEVERCAUSEDANDONANYTHEORYOFLIABILITY,WHETHERINCONTRACT,STRICTLIABILITY,ORTORT(INCLUDINGNEGLIGENCEOROTHERWISE)ARISINGINANYWAYOUTOFTHEUSEOFTHISSOFTWARE,EVENIFADVISEDOFTHEPOSSIBILITYOFSUCHDAMAGE"; $words=preg_split("/[\s,]+/",$wordtext); do{ $i=rand(,count($words)-); $word=strtoupper($words[$i]); }while(strlen($word)<||!ctype_alpha($word)); return$word; } functionguess($word){ returnstr_repeat('_',strlen($word)); } functionoutput($word){ $str=''; for($i=;$i<strlen($word);$i++){ $str=$word[$i]" "; } returnrtrim($str); } if(isset($_GET['op'])&&$_GET['op']=='start'){ $k=$_GET['k']; $_SESSION['num']=$k; exit; } if(isset($_GET['restart'])&&$_GET['restart']==){ session_unset(); header("location:$url"); exit; } if(!isset($_SESSION['word'])){ $word=get_word(); $_SESSION['word']=$word; }else{ $word=$_SESSION['word']; } $guessguess_word=guess($word); if(isset($_GET['op'])&&$_GET['op']=='ajax'){ $k=$_GET['k']; $re=''; if(!isset($_SESSION['already'])){ $_SESSION['already']=guess($_SESSION['word']); } if(!isset($_SESSION['count'])){ $_SESSION['count']=; } if(strpos($_SESSION['word'],$k)!==false){ for($i=;$i<strlen($_SESSION['word']);$i++){ if($_SESSION['word'][$i]!=$k){ $re='_'; }else{ $re=$_SESSION['word'][$i]; } } for($i=;$i<strlen($_SESSION['word']);$i++){ if($_SESSION['already'][$i]=='_'){ $_SESSION['already'][$i]=$re[$i]; } } }else{ $_SESSION['count']+=; } $return=output($_SESSION['already']); if($_SESSION['count']<=$_SESSION['num']){ if($_SESSION['already']==$_SESSION['word']){ $return="|"; }else{ $return="|"; } }else{ $return="|"; } echo$return; exit; } ?> <script> functionAjax(recvType){ varaj=newObject(); ajrecvType=recvType?recvTypetoUpperCase():'HTML'; ajtargetUrl=''; ajsendString=''; ajresultHandle=null; ajcreateXMLHttpRequest=function(){ varxmlHttp=false; if(windowXMLHttpRequest){ xmlHttp=newXMLHttpRequest(); }elseif(windowActiveXObject){ try{ xmlHttp=newActiveXObject("MsxmlXMLHTTP"); }catch(error){ try{ xmlHttp=newActiveXobject("MicrosoftXMLHttp"); }catch(error){ xmlHttp=false; } } } returnxmlHttp; } ajXMLHttpRequest=ajcreateXMLHttpRequest(); ajprocessHandle=function(){ if(ajXMLHttpRequestreadyState==){ if(ajXMLHttpRequeststatus==){ if(ajrecvType=="HTML"){ ajresultHandle(ajXMLHttpRequestresponseText); }elseif(ajrecvType=="XML"){ ajresultHandle(ajXMLHttpRequestresponseXML); } } } } ajget=function(targetUrl,resultHandle){ ajtargetUrl=targetUrl; if(resultHandle!=null){ ajXMLHttpRequestonreadystatechange=ajprocessHandle; ajresultHandle=resultHandle; } if(windowXMLHttpRequest){ ajXMLHttpRequestopen("get",ajtargetUrl); ajXMLHttpRequestsend(null); }else{ ajXMLHttpRequestopen("get",ajtargetUrl,true); ajXMLHttpRequestsend(); } } returnaj; } </script> <script> varajax=Ajax(); functionselect(v){ documentgetElementById(v)styledisplay='none'; ajaxget("guessphp?op=ajax&k="+v,function(r){ vart=rsplit("|"); documentgetElementById('word')innerHTML=t[]; if(t[]==){ documentgetElementById('select')styledisplay='none'; documentgetElementById('result')innerHTML='成功'; }elseif(t[]==){ documentgetElementById('select')styledisplay='none'; documentgetElementById('result')innerHTML='失败'; } }); } functioncheck(v){ ajaxget("guessphp?op=start&k="+v,function(r){ windowlocationhref="<?phpecho$url;?>"; }); } </script> <?php if(!isset($_SESSION['num'])){ echo'<inputtype="radio"onclick="check();"/>easy:wrong<br/>'; echo'<inputtype="radio"onclick="check();"/>normal:wrong<br/>'; echo'<inputtype="radio"onclick="check();"/>hard:wrong<br/>'; }else{ //echo$word; echo"最多可以猜错"$_SESSION['num']"次"; echo"<br/>"; echo"<divid='word'>"; echooutput($guess_word); echo"</div>"; echo'<br/>'; echo'<divid="select">'; for($i=ord('A');$i<=ord('Z');++$i){ echo"\n"; $letter=chr($i); echo'<spanid="'$letter'"style="display:"><ahref="javascript:void();"onclick="select(\''$letter'\');">'$letter'</a></span>'; } echo'</div>'; echo'<br/>'; echo'<br/>'; echo'<divid="result"></div>'; echo'<br/>'; echo'<br/>'; echo'<ahref="'$url'?restart=">重新开始</a>'; } ?>
这是一款php实现的猜单词游戏,希望大家可以举一反三,实现其他小游戏,熟练掌握php编程。