成语接龙游戏PHP

折腾 251 字 1067 阅

简言

对接百度汉语接口,制作一个简单的成语接龙小游戏。

PHP

<?php
header("Content-type: text/html; charset=UTF-8");
function replace_unicode_escape_sequence($match) {
  return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');}
$name = $_GET["msg"];
$id = $_GET["id"];
if(strpos($name,'我接')!==false&&strpos($name,'开始成语接龙')===false){
$name=str_replace('我接','',$name);
$b=file_get_contents("data/cyjl/".$id.".json");
$shu=strlen($name);
$shu=$shu/3;
$shu="-$shu";
$t=mb_substr($name, $shu, 1, 'UTF-8');
if($b==$t){
$strs = file_get_contents("http://app.dict.baidu.com/dictapp/v120/search_idiom?mainkey=$t");
$strs = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', 'replace_unicode_escape_sequence', $strs);
$name = $_GET["msg"];
$name=str_replace('我接','',$name);

$pd=strstr($strs,$name);
if($pd!==false){

$ss=preg_match_all('/"name":\["'.$name.'"\],"pinyin":\["(.*?)"\],"sid":\["(.*?)"\],"type":\["idiom"\],"word_pinyin":\["(.*?)"\],"baike_tts":\["(.*?)"\],"termadd_mean":\["(.*?)"\]/',$strs,$zs);
$w=mb_substr($name, -1, 1, 'UTF-8');
$my_file = 'data/cyjl/'.$id.'.json';
$handle = fopen($my_file, 'w') or die('Cannot open file: '.$my_file);
fwrite($handle, $w);

echo "恭喜,接龙成功!\n成语:$name\n拼音:".$zs[1][0]."\n解释:".$zs[5][0]."\n\n下一题开始咯!\n请接以〖".$w."〗打头的成语!";die;
}else{echo "接龙失败!\n\n当前需接以〖".$b."〗打头的成语。\nPS:您可以继续当前接龙或者重新开始!\n我接+成语或开始成语接龙+关键词。";die;}

}else{echo "接龙失败!\n再接再厉。\n当前需接以〖".$b."〗打头的成语。\nPS:您可以继续当前接龙或者重新开始!\n我接+成语或开始成语接龙+关键词。";die;}

}
if(strpos($name,'开始成语接龙')===false&&strpos($name,'我接')===false){
echo "抱歉,格式错误。\n开始游戏请发送:\n开始成语接龙+关键词。\nPS:关键词为一个汉字";
}else{
$name=str_replace('开始成语接龙','',$name);
$z=strlen($name);
if($z=="3"){
$name=$name."的成语";
$str = file_get_contents("http://app.dict.baidu.com/dictapp/v3/s?from=search&ptype=chengyu&source=chengyu&versionCode=52&platform=Android&wd=$name");
$str = preg_replace_callback('/\\\\u([0-9a-f]{4})/i', 'replace_unicode_escape_sequence', $str);
$s=preg_match_all('/"name":\["(.*?)"\],"pinyin":\["(.*?)"\],"sid":\["(.*?)"\],"type":\["idiom"\],"word_pinyin":\["(.*?)"\],"search_attr":\["(.*?)"\],"mean_list":\[{"definition":\["(.*?)"\]/',$str,$z);
$arr=range(0,$s); 
shuffle($arr); 
foreach($arr as $s); 
$c = $z[1][$s];//成语
$j = $z[6][$s];//成语解释
$y = $z[2][$s];//拼音
$shu=strlen($name);
$shu=$shu/3;
$shu="-$shu";
$w=mb_substr($c, -1, 1, 'UTF-8');
$my_file = 'data/cyjl/'.$id.'.json';
$handle = fopen($my_file, 'w') or die('Cannot open file: '.$my_file);
fwrite($handle, $w);
if($c==''){
echo "抱歉,获取出错了!\n请重试。";
}else{
echo "开始咯!本宝宝出题啦!\n成语:$c\n拼音:$y\n解释:$j\n请接以〖".$w."〗字开头的成语。";}
}else{echo "抱歉,仅限输入一个汉字。";}
}?>
- THE END -
打赏 分享
评论 ( 79 )
OωO
  1. Gutjpg

    where to buy ivermectin - ivermectin 12mg online ivermectin generic name

    昨天 19:23 回复
  2. Ddfdub

    best pharmacy prices for viagra - Brand viagra generic viagra online 25mg

    一天前 回复
  3. Oktlja

    thesis writing services - buy thesis paper writing dissertation service

  4. Jyrqrv

    real money casino - casirealgam gambling casino

  5. Akluix

    ivermectin 5 - stromectol cost canada ivermectin 3 mg pills for humans

  6. Ubydpb

    stromectol pills canada - buy stromectol canada stromectol 3mg

  7. Fvfqpy

    cheap tadalafil canada - Generic cialis next day shipping usa tadalafil

    10月18日 回复
  8. Qkbjxa

    tadalafil india - levitra vs cialis generic cialis 2018 cost

    10月17日 回复
  9. Apvnfx

    cheapest soft viagra soft on line - buy viagra texas viagra tablets in india online purchase

    10月16日 回复
  10. Najljb

    viagra 1 tablet - sample viagra sildenafil tablets

    10月14日 回复
  11. Gtqzvc

    ivermectin for sale - stromectol pills canada stromectol 3 mg dosage

    10月13日 回复
  12. Trpeus

    ivermectin 0.5 - ivermectin buy nz ivermectin india

    10月12日 回复
  13. Veltfieni
    Veltfieni

    http://buyneurontine.com/ - neurontine side effect relief

    10月10日 回复
  14. Fshjbz

    cenforce 50 mg - malegra 100mg malegra 100mg

    10月10日 回复
  15. Mzneff

    prednisone 10 - prednisone 5mg tablets prednisone 6 mg

    10月9日 回复
  16. Zcfzia

    how much is a cialis pill - cialis 40 mg cheapest genuine cialis online

    10月9日 回复
  17. Neurontine

    Celexa For Sale Online

    10月8日 回复
  18. Ybhfwm

    cialis 100mg india - 18 year old taking cialis generic cialis 10mg

    10月7日 回复
  19. prednisolone 20 mg side effects

    Cephalexin With No Presciption

    10月7日 回复
  20. Okidzi

    viagra medicine in india - sidpill buy viagra online cheap canada

    10月6日 回复
  21. Plvfmo

    ivermectin 50 - rxivercn.com ivermectin generic name

    10月5日 回复
  22. biareemep
    biareemep
    10月5日 回复
  23. Njfrnv

    xenical pills for sale - orlistat dose orlistat alli

    10月4日 回复
  24. Bfjtjo

    vilitra 40 mg usa and uk - cenforce 150 usa and uk vidalista 60mg

    10月3日 回复
  25. offisee
    offisee
    10月1日 回复
  26. Dduvxr

    side effects of plaquenil - is plaquenil an immunosuppressant prednisone 30 mg tablet

    10月1日 回复
  27. Tydclc

    buy ivermectin cream - ivermectin over the counter uk buy stromectol 12mg

    9月26日 回复
  28. Btfrjj

    buy dissertation online - assignment sites order research paper online

    9月25日 回复
  29. acouple
    acouple
    9月24日 回复
  30. Jcpsle

    medicine accutane - buy accutane 20mg online accutane drug

    9月24日 回复
  31. Lasix

    Cialis 5 Mg Original

    9月23日 回复
  32. Uiespi

    generic tadalafil at walmart - tadalapills.com tadalafil professional

    9月23日 回复
  33. sholype
    sholype

    http://buyplaquenilcv.com/ - plaquenil toxicity symptoms

    9月22日 回复
  34. Pqvpyy

    sildenafil online usa - silepilled.com what is sildenafil

    9月21日 回复
  35. Zithromax

    Cephalexin Drug Interactions With Methadone

    9月21日 回复
  36. Jidjvm

    ivermectin cost in usa - can i buy ivermectin online ivermectin dosage

    9月20日 回复
  37. Ydivil

    stromectol us - ivermectin australia ivermectin over the counter canada

    9月19日 回复
  38. Tilange
    Tilange

    https://buypriligyhop.com/ - precio de priligy en mexico

    9月19日 回复
  39. Wjoudm

    how to buy doxycycline - vibramycin doxycycline prednisolone buy online

    9月17日 回复
  40. Gsespa

    cytotec over the counter canada - site cytotec medication

    9月16日 回复
  41. buy priligy in uae

    Cephalexin Review

    9月16日 回复
  42. Easedia
    Easedia

    https://buyzithromaxinf.com/ - methotrexate without a prescription

    9月16日 回复
  43. Pfbyet

    albuterol nebulizer - ventolin 90 mcg generic ventolin price

    9月15日 回复
  44. Lmkycg

    lasix 500 mg price - lasix daily furosemide 20 mg where to buy

    9月14日 回复
  45. Wtdwco

    prednisone no script - prednisone 40 mg deltasone 10 mg cost

    9月13日 回复
  46. Vienief
    Vienief
    9月12日 回复
  47. Yppfkw

    ivermectin cream uk - stromectol tablets generic stromectol

    9月12日 回复
  48. Eejxhb

    buy tadalafil europe - otadalafil.com real cialis

    9月9日 回复
  49. anowirway
    anowirway
    9月9日 回复
  50. Zwoyiw

    viagra cost - How to get viagra sildenafil Dallas

    9月8日 回复
  51. Embably
    Embably

    http://buysildenshop.com/ - generic purchase viagra

    9月7日 回复
  52. Propecia

    Remeron

    9月7日 回复
  53. Rgssts

    thesis writer - term paper writers help me write a research paper

    9月6日 回复
  54. Tnnizo

    methylprednisolone uk - lyrica generic medication lyrica 175 mg

    9月5日 回复
  55. Kzczgu

    buy amoxicilina 500 mg - amoxicillin for sale for humans buy amoxicillin

    9月4日 回复
  56. Cukdhh

    accutane cost without insurance - how to get accutane online accutane for sale

    9月3日 回复
  57. Hlceal

    prednisone 50 mg - prednisone 40 mg cost 85g prednisone

    9月1日 回复
  58. Cascalm
    Cascalm
    8月31日 回复
  59. Ltxmmy

    stromectol tablets 3 mg - stromectol sales stromectol for sale

    8月31日 回复
  60. Attassy
    Attassy
    8月30日 回复
  61. Eovlol

    vardenafil online consultation - buy discount vardenafil bayer vardenafil online

    8月30日 回复
  62. Stromectol

    Cialis 20 Mg Kohlpharma

    8月29日 回复
  63. Gejtje

    canada drug pharmacy - cheap cialis 10mg canadian pharmacy cialis 20 mg

    8月29日 回复
  64. saunTee
    saunTee
    8月28日 回复
  65. Iuoqpx

    sildenafil brand name - 800mg viagra

    8月27日 回复
  66. Mbpcee

    can i buy neurontin over the counter - neurontin 600 mg price generic levothyroxine canada

    8月25日 回复
  67. Nmmvrs

    where to get doxycycline in singapore - doxycycline order where can you buy doxycycline

    8月24日 回复
  68. Pjpvzy

    cytotec 200 mg tab - cheap cytotec where to buy cytotec pills in south africa

    8月23日 回复
  69. Onqrsm

    ventolin nebules - ventolin for sale ventolin purchase

    8月21日 回复
  70. Mnnagj

    ivermectin lice - buy ivermectin tablets ivermectin 400 mg

    8月20日 回复
  71. 灵异故事

    日常打卡~ 加油-_-

    2020年10月10日 回复
感谢打赏