使用PHP在微信公共平台实现24点游戏_PHP教程
使用PHP在微信公共平台实现24点游戏,搭建服务器为SAE,所以很多语句和MYSQL不太一样,24点的数据库存储在24data里面,先用python计算出结果然后存储在本地的txt文件最后倒入SAE的MYSQL,记录了所有有解的4个数字。可以添加微信号:24点。
//define your token define("TOKEN", "ddwm"); define("INPUT_NAME", "1"); define("START_GAME", "2"); define("TIMING_START", "3"); define("TIMING_END", "4"); $wechatObj = new Why24Point(); if ($_GET["echostr"]) $wechatObj--->valid(); else $wechatObj->responseMsg(); class Why24Point { public function responseMsg() { //get post data, May be due to the different environments $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //extract post data if (!empty($postStr)) { $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; if($postObj->Event == "subscribe"){ $time = time(); $textTpl = " <xml> <tousername><!--[CDATA[%s]]--></tousername> <fromusername><!--[CDATA[%s]]--></fromusername> <createtime>%s</createtime> <msgtype><!--[CDATA[%s]]--></msgtype> <content><!--[CDATA[%s]]--></content> </xml>"; $msgType = "text"; $contentStr = "哟你好亲爱的小伙伴,欢迎来到24点~\n游戏规则:使用+-*/四则运算得出结果为24即可。\n任何时候输入 主页 返回主菜单,\n输入 排名 查看当前排名哟~\n如果有情况反馈请发送语音信息!\n请输入任意内容,开始我们的24点职业生涯!"; $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; } $keyword = trim($postObj->Content); $time = time(); $textTpl = " <xml> <tousername><!--[CDATA[%s]]--></tousername> <fromusername><!--[CDATA[%s]]--></fromusername> <createtime>%s</createtime> <msgtype><!--[CDATA[%s]]--></msgtype> <content><!--[CDATA[%s]]--></content> </xml>"; if (!empty($keyword)) { $msgType = "text"; $contentStr = $this->getData($fromUsername, $keyword); $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; } else { echo "输入点东西吧。。"; } } else { echo ""; exit; } } private function getData($fromUsername, $keyword) { if($keyword == "主页"){ $this->setStep($fromUsername, constant("START_GAME")); return "欢迎来到24点的决战现场。请输入任意内容,开始我们的24点职业生涯!任何时候输入 主页 返回主菜单,输入 排名 查看当前排名~"; } if($keyword == "排名"){ return "您的目前排名是:".$this->getRank($fromUsername); } if ($this->isFirst($fromUsername)) { return "这是你第一次参加游戏,请输入你的用户昵称:"; } if ($this->getStep($fromUsername) == constant("INPUT_NAME")) { $this->setName($fromUsername, $keyword); $this->setStep($fromUsername, constant("START_GAME")); return "你好," . $keyword . "同学。请输入任意内容,开始我们的24点职业生涯!任何时候输入 主页 返回主菜单,输入 排名 查看当前排名~"; } if ($this->getStep($fromUsername) == constant("START_GAME")) { $numbers = $this->getNumbers(); $this->setStep($fromUsername, constant("TIMING_START")); return "游戏规则:使用+-*/四则运算得出结果为24即可。\n请听题!" . $this->getNumbers(); } if ($this->getStep($fromUsername) == constant("TIMING_START")) { if ($this->calcStr($keyword)) { //$this->setStep($fromUsername, constant("TIMING_END")); $this->setGrade($fromUsername, 5); $this->setStep($fromUsername, constant("START_GAME")); return "结果等于24!你现在的分数是:".$this->getGrade($fromUsername); } return "结果错误!骗子,根本就不等于24!"; //$this->setStep($fromUsername, constant("TIMING_END")); } return "我擦,系统出问题了。抱了个歉哈!"; } //计算排名 private function getRank($fromUsername){ $mysql = new SaeMysql(); $grade = $this->getGrade($fromUsername); $sql = "SELECT COUNT( * ) FROM `24points` WHERE `grade` > ".$grade.""; $mysql->closeDb(); return intval($mysql->getVar($sql))+1; } //计算成绩 private function setGrade($fromUsername, $add){ $mysql = new SaeMysql(); $sql = "SELECT grade FROM `24points` WHERE `userid` = '" . $fromUsername . "'"; $grade = intval($mysql->getVar($sql)) + $add; $sql = "UPDATE `24points` SET `grade` = '" . $grade . "' WHERE `userid` ='" . $fromUsername . "';"; $mysql->runSql($sql); $mysql->closeDb(); } //获得成绩 private function getGrade($fromUsername){ $mysql = new SaeMysql(); $sql = "SELECT grade FROM `24points` WHERE `userid` = '" . $fromUsername . "'"; $mysql->closeDb(); return intval($mysql->getVar($sql)); } //计算等式,返回正确或者错误 private function calcStr($keyword) { $keyword = str_replace("(","(",$keyword); $keyword = str_replace(")",")",$keyword); $keyword = str_replace("÷","/",$keyword); $keyword = str_replace("/","/",$keyword); $keyword = str_replace("×","*",$keyword); $atr_arr = str_split($keyword); $new_atr = ''; for ($i = 0; $i < strlen($keyword); $i++) { $new_atr = $new_atr . $atr_arr[$i]; } $s = eval("return $new_atr;"); if ($s == 24) { return true; } return false; } //是否是第一次 private function isFirst($fromUsername) { $mysql = new SaeMysql(); $sql = "SELECT * FROM `24points` WHERE `userid` = '" . $fromUsername . "'"; $data = $mysql->getData($sql); if (count($data) == 0) { $sql = "INSERT INTO `24points` (`userid`, `step`) VALUES ('" . $fromUsername . "', '" . constant("INPUT_NAME") . "');"; $mysql->runSql($sql); $mysql->closeDb(); return true; } return false; } //获取当前的步骤 private function getStep($fromUsername) { $mysql = new SaeMysql(); $sql = "SELECT step FROM `24points` WHERE `userid` = '" . $fromUsername . "'"; $mysql->closeDb(); return $mysql->getVar($sql); } //获取随机的四个数字用空格隔开 private function getNumbers() { $rand_id = rand(1, 1362); $mysql = new SaeMysql(); $sql = "SELECT num1 FROM `24data` WHERE `id` = '" . $rand_id . "'"; $num1 = $mysql->getVar($sql); $sql = "SELECT num2 FROM `24data` WHERE `id` = '" . $rand_id . "'"; $num2 = $mysql->getVar($sql); $sql = "SELECT num3 FROM `24data` WHERE `id` = '" . $rand_id . "'"; $num3 = $mysql->getVar($sql); $sql = "SELECT num4 FROM `24data` WHERE `id` = '" . $rand_id . "'"; $num4 = $mysql->getVar($sql); $mysql->closeDb(); $numbers = $num1 . " " . $num2 . " " . $num3 . " " . $num4; return $numbers; } //设置当前操作的步数 private function setStep($fromUsername, $step) { $mysql = new SaeMysql(); $sql = "UPDATE `24points` SET `step` = '" . $step . "' WHERE `userid` ='" . $fromUsername . "';"; $mysql->runSql($sql); $mysql->closeDb(); } //设置用户昵称 private function setName($fromUsername, $username) { $mysql = new SaeMysql(); $sql = "UPDATE `24points` SET `username` = '" . $username . "' WHERE `userid` ='" . $fromUsername . "';"; $mysql->runSql($sql); $mysql->closeDb(); } //验证微信 public function valid() { $echoStr = $_GET["echostr"]; //valid signature , option if ($this->checkSignature()) { echo $echoStr; exit; } } //检查签名 private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode($tmpArr); $tmpStr = sha1($tmpStr); if ($tmpStr == $signature) { return true; } else { return false; } } }
1 1 1 8 1 1 1 11 1 1 1 12 1 1 1 13 1 1 2 6 1 1 2 7 1 1 2 8 1 1 2 9 1 1 2 10 1 1 2 11 1 1 2 12 1 1 2 13 1 1 3 4 1 1 3 5 1 1 3 6 1 1 3 7 1 1 3 8 1 1 3 9 1 1 3 10 1 1 3 11 1 1 3 12 1 1 3 13 1 1 4 4 1 1 4 5 1 1 4 6 1 1 4 7 1 1 4 8 1 1 4 9 1 1 4 10 1 1 4 12 1 1 5 5 1 1 5 6 1 1 5 7 1 1 5 8 1 1 6 6 1 1 6 8 1 1 6 9 1 1 6 12 1 1 7 10 1 1 8 8 1 1 9 13 1 1 10 12 1 1 10 13 1 1 11 11 1 1 11 12 1 1 11 13 1 1 12 12 1 1 12 13 1 1 13 13 1 2 2 4 1 2 2 5 1 2 2 6 1 2 2 7 1 2 2 8 1 2 2 9 1 2 2 10 1 2 2 11 1 2 2 12 1 2 2 13 1 2 3 3 1 2 3 4 1 2 3 5 1 2 3 6 1 2 3 7 1 2 3 8 1 2 3 9 1 2 3 10 1 2 3 11 1 2 3 12 1 2 3 13 1 2 4 4 1 2 4 5 1 2 4 6 1 2 4 7 1 2 4 8 1 2 4 9 1 2 4 10 1 2 4 11 1 2 4 12 1 2 4 13 1 2 5 5 1 2 5 6 1 2 5 7 1 2 5 8 1 2 5 9 1 2 5 10 1 2 5 12 1 2 5 13 1 2 6 6 1 2 6 7 1 2 6 8 1 2 6 9 1 2 6 10 1 2 6 11 1 2 6 12 1 2 6 13 1 2 7 7 1 2 7 8 1 2 7 9 1 2 7 10 1 2 7 11 1 2 7 12 1 2 8 8 1 2 8 9 1 2 8 10 1 2 8 13 1 2 9 11 1 2 9 12 1 2 9 13 1 2 10 11 1 2 10 12 1 2 10 13 1 2 11 11 1 2 11 12 1 2 11 13 1 2 12 12 1 2 12 13 1 2 13 13 1 3 3 3 1 3 3 4 1 3 3 5 1 3 3 6 1 3 3 7 1 3 3 8 1 3 3 9 1 3 3 10 1 3 3 11 1 3 3 12 1 3 4 4 1 3 4 5 1 3 4 6 1 3 4 7 1 3 4 8 1 3 4 9 1 3 4 10 1 3 4 11 1 3 4 12 1 3 4 13 1 3 5 6 1 3 5 7 1 3 5 8 1 3 5 9 1 3 5 10 1 3 5 11 1 3 5 12 1 3 5 13 1 3 6 6 1 3 6 7 1 3 6 8 1 3 6 9 1 3 6 10 1 3 6 11 1 3 6 12 1 3 6 13 1 3 7 7 1 3 7 8 1 3 7 9 1 3 7 10 1 3 7 12 1 3 7 13 1 3 8 8 1 3 8 9 1 3 8 10 1 3 8 11 1 3 8 12 1 3 8 13 1 3 9 9 1 3 9 10 1 3 9 11 1 3 9 12 1 3 9 13 1 3 10 10 1 3 10 11 1 3 10 12 1 3 11 11 1 3 11 12 1 3 12 12 1 3 12 13 1 3 13 13 1 4 4 4 1 4 4 5 1 4 4 6 1 4 4 7 1 4 4 8 1 4 4 9 1 4 4 10 1 4 4 11 1 4 4 12 1 4 5 5 1 4 5 6 1 4 5 7 1 4 5 8 1 4 5 9 1 4 5 10 1 4 5 11 1 4 5 12 1 4 5 13 1 4 6 6 1 4 6 7 1 4 6 8 1 4 6 9 1 4 6 10 1 4 6 11 1 4 6 12 1 4 6 13 1 4 7 7 1 4 7 8 1 4 7 9 1 4 7 11 1 4 7 12 1 4 7 13 1 4 8 8 1 4 8 9 1 4 8 11 1 4 8 12 1 4 8 13 1 4 9 10 1 4 9 11 1 4 9 12 1 4 9 13 1 4 10 10 1 4 10 11 1 4 10 12 1 4 12 12 1 5 5 5 1 5 5 6 1 5 5 9 1 5 5 10 1 5 5 11 1 5 5 12 1 5 5 13 1 5 6 6 1 5 6 7 1 5 6 8 1 5 6 9 1 5 6 10 1 5 6 11 1 5 6 12 1 5 6 13 1 5 7 8 1 5 7 9 1 5 7 10 1 5 7 11 1 5 7 12 1 5 7 13 1 5 8 8 1 5 8 9 1 5 8 10 1 5 8 11 1 5 8 12 1 5 8 13 1 5 9 9 1 5 9 10 1 5 9 11 1 5 9 12 1 5 9 13 1 5 10 10 1 5 10 11 1 5 10 12 1 5 10 13 1 5 11 11 1 5 11 12 1 5 12 12 1 6 6 6 1 6 6 8 1 6 6 9 1 6 6 10 1 6 6 11 1 6 6 12 1 6 6 13 1 6 7 9 1 6 7 10 1 6 7 11 1 6 7 12 1 6 8 8 1 6 8 9 1 6 8 10 1 6 8 11 1 6 8 12 1 6 8 13 1 6 9 9 1 6 9 10 1 6 9 12 1 6 9 13 1 6 10 12 1 6 10 13 1 6 11 12 1 6 11 13 1 6 12 12 1 6 12 13 1 7 7 9 1 7 7 10 1 7 7 11 1 7 7 12 1 7 8 8 1 7 8 9 1 7 8 10 1 7 8 11 1 7 8 12 1 7 9 9 1 7 9 10 1 7 9 11 1 7 9 12 1 7 9 13 1 7 10 12 1 7 10 13 1 7 12 12 1 7 12 13 1 7 13 13 1 8 8 8 1 8 8 9 1 8 8 10 1 8 8 11 1 8 8 12 1 8 9 11 1 8 9 12 1 8 9 13 1 8 10 11 1 8 10 12 1 8 10 13 1 8 11 12 1 8 11 13 1 8 12 12 1 9 9 12 1 9 10 12 1 9 10 13 1 9 11 11 1 9 11 12 1 9 11 13 1 9 12 12 1 10 10 12 1 10 11 12 1 10 12 12 1 10 12 13 1 11 11 12 1 11 11 13 1 11 12 12 1 11 12 13 1 11 13 13 1 12 12 12 1 12 12 13 1 12 13 13 2 2 2 3 2 2 2 4 2 2 2 5 2 2 2 7 2 2 2 8 2 2 2 9 2 2 2 10 2 2 2 11 2 2 2 12 2 2 2 13 2 2 3 3 2 2 3 4 2 2 3 5 2 2 3 6 2 2 3 7 2 2 3 8 2 2 3 9 2 2 3 10 2 2 3 11 2 2 3 12 2 2 3 13 2 2 4 4 2 2 4 5 2 2 4 6 2 2 4 7 2 2 4 8 2 2 4 9 2 2 4 10 2 2 4 11 2 2 4 12 2 2 4 13 2 2 5 5 2 2 5 6 2 2 5 7 2 2 5 8 2 2 5 9 2 2 5 10 2 2 5 11 2 2 5 12 2 2 6 6 2 2 6 7 2 2 6 8 2 2 6 9 2 2 6 10 2 2 6 11 2 2 6 12 2 2 6 13 2 2 7 7 2 2 7 8 2 2 7 10 2 2 7 12 2 2 7 13 2 2 8 8 2 2 8 9 2 2 8 10 2 2 8 12 2 2 9 10 2 2 9 11 2 2 9 12 2 2 10 10 2 2 10 11 2 2 10 13 2 2 11 11 2 2 11 12 2 2 11 13 2 2 12 12 2 2 12 13 2 2 13 13 2 3 3 3 2 3 3 5 2 3 3 6 2 3 3 7 2 3 3 8 2 3 3 9 2 3 3 10 2 3 3 11 2 3 3 12 2 3 3 13 2 3 4 4 2 3 4 5 2 3 4 6 2 3 4 7 2 3 4 8 2 3 4 9 2 3 4 10 2 3 4 11 2 3 4 12 2 3 4 13 2 3 5 5 2 3 5 6 2 3 5 7 2 3 5 8 2 3 5 9 2 3 5 10 2 3 5 11 2 3 5 12 2 3 5 13 2 3 6 6 2 3 6 7 2 3 6 8 2 3 6 9 2 3 6 10 2 3 6 11 2 3 6 12 2 3 6 13 2 3 7 7 2 3 7 8 2 3 7 9 2 3 7 10 2 3 7 11 2 3 7 12 2 3 7 13 2 3 8 8 2 3 8 9 2 3 8 10 2 3 8 11 2 3 8 12 2 3 8 13 2 3 9 9 2 3 9 10 2 3 9 12 2 3 9 13 2 3 10 10 2 3 10 12 2 3 10 13 2 3 11 11 2 3 11 12 2 3 11 13 2 3 12 12 2 3 12 13 2 3 13 13 2 4 4 4 2 4 4 5 2 4 4 6 2 4 4 7 2 4 4 8 2 4 4 9 2 4 4 10 2 4 4 11 2 4 4 12 2 4 4 13 2 4 5 5 2 4 5 6 2 4 5 7 2 4 5 8 2 4 5 9 2 4 5 10 2 4 5 11 2 4 5 12 2 4 5 13 2 4 6 6 2 4 6 7 2 4 6 8 2 4 6 9 2 4 6 10 2 4 6 11 2 4 6 12 2 4 6 13 2 4 7 7 2 4 7 8 2 4 7 9 2 4 7 10 2 4 7 11 2 4 7 12 2 4 8 8 2 4 8 9 2 4 8 10 2 4 8 11 2 4 8 12 2 4 8 13 2 4 9 9 2 4 9 10 2 4 9 12 2 4 9 13 2 4 10 10 2 4 10 11 2 4 10 12 2 4 10 13 2 4 11 11 2 4 11 12 2 4 12 12 2 4 13 13 2 5 5 7 2 5 5 8 2 5 5 9 2 5 5 10 2 5 5 11 2 5 5 12 2 5 5 13 2 5 6 6 2 5 6 7 2 5 6 8 2 5 6 9 2 5 6 10 2 5 6 11 2 5 6 12 2 5 6 13 2 5 7 7 2 5 7 8 2 5 7 9 2 5 7 10 2 5 7 11 2 5 7 13 2 5 8 8 2 5 8 9 2 5 8 10 2 5 8 11 2 5 8 12 2 5 8 13 2 5 9 10 2 5 9 11 2 5 9 12 2 5 10 10 2 5 10 11 2 5 10 12 2 5 10 13 2 5 11 12 2 5 12 12 2 5 12 13 2 6 6 6 2 6 6 7 2 6 6 8 2 6 6 9 2 6 6 10 2 6 6 11 2 6 6 12 2 6 6 13 2 6 7 8 2 6 7 9 2 6 7 10 2 6 7 11 2 6 7 12 2 6 7 13 2 6 8 8 2 6 8 9 2 6 8 10 2 6 8 11 2 6 8 12 2 6 8 13 2 6 9 9 2 6 9 10 2 6 9 11 2 6 9 12 2 6 10 10 2 6 10 11 2 6 10 12 2 6 10 13 2 6 11 12 2 6 11 13 2 6 12 12 2 6 12 13 2 7 7 8 2 7 7 10 2 7 7 11 2 7 7 12 2 7 7 13 2 7 8 8 2 7 8 9 2 7 8 11 2 7 8 12 2 7 8 13 2 7 9 10 2 7 9 11 2 7 9 13 2 7 10 10 2 7 10 11 2 7 10 12 2 7 11 12 2 7 12 12 2 7 12 13 2 8 8 8 2 8 8 9 2 8 8 10 2 8 8 11 2 8 8 12 2 8 8 13 2 8 9 9 2 8 9 10 2 8 9 11 2 8 9 12 2 8 9 13 2 8 10 10 2 8 10 11 2 8 10 12 2 8 10 13 2 8 11 11 2 8 11 12 2 8 12 12 2 8 12 13 2 8 13 13 2 9 9 11 2 9 9 12 2 9 9 13 2 9 10 10 2 9 10 11 2 9 10 12 2 9 10 13 2 9 11 11 2 9 11 13 2 9 12 13 2 9 13 13 2 10 10 11 2 10 10 12 2 10 10 13 2 10 11 11 2 10 11 12 2 10 11 13 2 10 12 13 2 11 11 11 2 11 11 12 2 11 11 13 2 11 12 12 2 11 12 13 2 11 13 13 2 12 12 12 2 12 12 13 2 12 13 13 2 13 13 13 3 3 3 3 3 3 3 4 3 3 3 5 3 3 3 6 3 3 3 7 3 3 3 8 3 3 3 9 3 3 3 10 3 3 3 11 3 3 3 12 3 3 4 4 3 3 4 5 3 3 4 6 3 3 4 7 3 3 4 8 3 3 4 9 3 3 4 11 3 3 4 12 3 3 4 13 3 3 5 5 3 3 5 6 3 3 5 7 3 3 5 9 3 3 5 10 3 3 5 12 3 3 5 13 3 3 6 6 3 3 6 7 3 3 6 8 3 3 6 9 3 3 6 10 3 3 6 11 3 3 6 12 3 3 6 13 3 3 7 7 3 3 7 8 3 3 7 9 3 3 7 11 3 3 7 12 3 3 7 13 3 3 8 8 3 3 8 9 3 3 8 10 3 3 8 12 3 3 8 13 3 3 9 9 3 3 9 10 3 3 9 11 3 3 9 12 3 3 9 13 3 3 10 13 3 3 11 12 3 3 11 13 3 3 12 12 3 3 12 13 3 4 4 4 3 4 4 5 3 4 4 6 3 4 4 7 3 4 4 8 3 4 4 9 3 4 4 10 3 4 4 11 3 4 4 12 3 4 4 13 3 4 5 5 3 4 5 6 3 4 5 7 3 4 5 8 3 4 5 9 3 4 5 10 3 4 5 11 3 4 5 12 3 4 5 13 3 4 6 6 3 4 6 8 3 4 6 9 3 4 6 10 3 4 6 11 3 4 6 12 3 4 6 13 3 4 7 7 3 4 7 8 3 4 7 9 3 4 7 10 3 4 7 11 3 4 7 12 3 4 8 9 3 4 8 10 3 4 8 11 3 4 8 12 3 4 8 13 3 4 9 9 3 4 9 11 3 4 9 12 3 4 9 13 3 4 10 10 3 4 10 12 3 4 10 13 3 4 11 12 3 4 11 13 3 4 12 12 3 4 12 13 3 5 5 6 3 5 5 7 3 5 5 8 3 5 5 9 3 5 5 11 3 5 5 12 3 5 6 6 3 5 6 7 3 5 6 8 3 5 6 9 3 5 6 10 3 5 6 11 3 5 6 12 3 5 6 13 3 5 7 8 3 5 7 9 3 5 7 10 3 5 7 11 3 5 7 12 3 5 7 13 3 5 8 8 3 5 8 9 3 5 8 11 3 5 8 12 3 5 8 13 3 5 9 9 3 5 9 10 3 5 9 12 3 5 9 13 3 5 10 10 3 5 10 11 3 5 10 12 3 5 10 13 3 5 11 11 3 5 11 12 3 5 12 12 3 5 12 13 3 5 13 13 3 6 6 6 3 6 6 7 3 6 6 8 3 6 6 9 3 6 6 10 3 6 6 11 3 6 6 12 3 6 6 13 3 6 7 7 3 6 7 8 3 6 7 9 3 6 7 10 3 6 7 12 3 6 7 13 3 6 8 8 3 6 8 9 3 6 8 10 3 6 8 12 3 6 8 13 3 6 9 9 3 6 9 10 3 6 9 11 3 6 9 12 3 6 9 13 3 6 10 10 3 6 10 11 3 6 10 12 3 6 11 11 3 6 11 12 3 6 11 13 3 6 12 12 3 6 12 13 3 6 13 13 3 7 7 7 3 7 7 8 3 7 7 9 3 7 7 10 3 7 7 12 3 7 7 13 3 7 8 8 3 7 8 9 3 7 8 11 3 7 8 12 3 7 8 13 3 7 9 9 3 7 9 10 3 7 9 11 3 7 9 12 3 7 9 13 3 7 10 10 3 7 10 11 3 7 10 13 3 7 11 11 3 7 11 12 3 7 12 12 3 7 12 13 3 7 13 13 3 8 8 8 3 8 8 9 3 8 8 10 3 8 8 11 3 8 8 12 3 8 9 9 3 8 9 10 3 8 9 11 3 8 9 12 3 8 9 13 3 8 10 10 3 8 10 11 3 8 10 12 3 8 11 11 3 8 11 12 3 8 12 12 3 8 12 13 3 8 13 13 3 9 9 9 3 9 9 10 3 9 9 11 3 9 9 12 3 9 9 13 3 9 10 10 3 9 10 11 3 9 10 12 3 9 10 13 3 9 11 11 3 9 11 12 3 9 11 13 3 9 12 12 3 9 12 13 3 9 13 13 3 10 10 12 3 10 11 12 3 10 11 13 3 11 11 12 3 11 12 12 3 12 12 12 3 12 12 13 3 12 13 13 4 4 4 4 4 4 4 5 4 4 4 6 4 4 4 7 4 4 4 8 4 4 4 9 4 4 4 10 4 4 4 11 4 4 4 12 4 4 5 5 4 4 5 6 4 4 5 7 4 4 5 8 4 4 5 10 4 4 5 11 4 4 5 12 4 4 5 13 4 4 6 8 4 4 6 9 4 4 6 10 4 4 6 11 4 4 6 12 4 4 6 13 4 4 7 7 4 4 7 8 4 4 7 9 4 4 7 10 4 4 7 12 4 4 7 13 4 4 8 8 4 4 8 9 4 4 8 10 4 4 8 11 4 4 8 12 4 4 8 13 4 4 9 11 4 4 9 12 4 4 10 10 4 4 10 12 4 4 10 13 4 4 11 12 4 4 11 13 4 4 12 12 4 4 12 13 4 5 5 5 4 5 5 6 4 5 5 7 4 5 5 8 4 5 5 9 4 5 5 10 4 5 6 6 4 5 6 7 4 5 6 8 4 5 6 9 4 5 6 10 4 5 6 11 4 5 6 12 4 5 6 13 4 5 7 7 4 5 7 8 4 5 7 9 4 5 7 10 4 5 7 11 4 5 7 12 4 5 7 13 4 5 8 8 4 5 8 9 4 5 8 10 4 5 8 11 4 5 8 12 4 5 8 13 4 5 9 9 4 5 9 10 4 5 9 12 4 5 9 13 4 5 10 10 4 5 10 11 4 5 10 12 4 5 10 13 4 5 11 11 4 5 11 12 4 5 11 13 4 5 12 12 4 5 12 13 4 5 13 13 4 6 6 6 4 6 6 7 4 6 6 8 4 6 6 9 4 6 6 10 4 6 6 12 4 6 7 7 4 6 7 8 4 6 7 9 4 6 7 10 4 6 7 12 4 6 8 8 4 6 8 9 4 6 8 10 4 6 8 12 4 6 8 13 4 6 9 9 4 6 9 10 4 6 9 12 4 6 9 13 4 6 10 10 4 6 10 11 4 6 10 12 4 6 11 11 4 6 11 12 4 6 12 12 4 6 12 13 4 6 13 13 4 7 7 7 4 7 7 8 4 7 7 11 4 7 8 8 4 7 8 9 4 7 8 10 4 7 8 11 4 7 8 12 4 7 8 13 4 7 9 9 4 7 9 10 4 7 9 11 4 7 9 12 4 7 9 13 4 7 10 10 4 7 10 11 4 7 10 12 4 7 11 11 4 7 11 12 4 7 11 13 4 7 12 12 4 7 12 13 4 7 13 13 4 8 8 8 4 8 8 9 4 8 8 10 4 8 8 11 4 8 8 12 4 8 8 13 4 8 9 9 4 8 9 10 4 8 9 11 4 8 9 12 4 8 9 13 4 8 10 10 4 8 10 11 4 8 10 12 4 8 11 11 4 8 11 12 4 8 11 13 4 8 12 12 4 8 12 13 4 8 13 13 4 9 9 10 4 9 9 12 4 9 10 11 4 9 10 12 4 9 10 13 4 9 11 11 4 9 11 12 4 9 12 12 4 10 10 11 4 10 10 12 4 10 11 12 4 10 11 13 4 10 12 12 4 10 12 13 4 11 12 13 4 12 12 12 5 5 5 5 5 5 5 6 5 5 5 9 5 5 5 12 5 5 6 6 5 5 6 7 5 5 6 8 5 5 6 11 5 5 7 7 5 5 7 8 5 5 7 10 5 5 7 11 5 5 8 8 5 5 8 9 5 5 8 10 5 5 8 11 5 5 8 12 5 5 8 13 5 5 9 9 5 5 9 10 5 5 9 11 5 5 10 10 5 5 10 11 5 5 10 13 5 5 11 11 5 5 11 12 5 5 11 13 5 5 12 12 5 5 12 13 5 5 13 13 5 6 6 6 5 6 6 7 5 6 6 8 5 6 6 9 5 6 6 10 5 6 6 12 5 6 7 7 5 6 7 8 5 6 7 9 5 6 7 12 5 6 7 13 5 6 8 8 5 6 8 9 5 6 8 10 5 6 8 12 5 6 8 13 5 6 9 9 5 6 9 10 5 6 9 11 5 6 9 12 5 6 9 13 5 6 10 10 5 6 10 11 5 6 10 12 5 6 10 13 5 6 11 11 5 6 11 12 5 6 11 13 5 6 12 12 5 6 12 13 5 6 13 13 5 7 7 9 5 7 7 10 5 7 7 11 5 7 8 8 5 7 8 9 5 7 8 10 5 7 9 10 5 7 9 11 5 7 9 12 5 7 9 13 5 7 10 10 5 7 10 11 5 7 10 12 5 7 10 13 5 7 11 11 5 7 11 13 5 7 12 12 5 7 13 13 5 8 8 8 5 8 8 9 5 8 8 10 5 8 8 13 5 8 9 11 5 8 9 12 5 8 9 13 5 8 10 11 5 8 10 12 5 8 11 12 5 8 11 13 5 8 12 12 5 9 9 11 5 9 9 12 5 9 10 10 5 9 10 11 5 9 10 13 5 9 11 13 5 9 12 12 5 9 12 13 5 10 10 11 5 10 10 12 5 10 10 13 5 10 11 11 5 10 12 13 5 10 13 13 5 11 12 12 6 6 6 6 6 6 6 8 6 6 6 9 6 6 6 10 6 6 6 11 6 6 6 12 6 6 7 9 6 6 7 10 6 6 7 11 6 6 7 12 6 6 8 8 6 6 8 9 6 6 8 10 6 6 8 11 6 6 8 12 6 6 8 13 6 6 9 10 6 6 9 11 6 6 9 12 6 6 9 13 6 6 10 12 6 6 10 13 6 6 11 12 6 6 11 13 6 6 12 12 6 6 12 13 6 7 7 10 6 7 7 11 6 7 8 9 6 7 8 10 6 7 8 11 6 7 8 12 6 7 9 9 6 7 9 12 6 7 10 10 6 7 10 12 6 7 10 13 6 7 11 11 6 7 11 12 6 7 11 13 6 7 12 12 6 7 12 13 6 8 8 8 6 8 8 9 6 8 8 10 6 8 8 11 6 8 8 12 6 8 9 9 6 8 9 10 6 8 9 11 6 8 9 12 6 8 9 13 6 8 10 11 6 8 10 12 6 8 10 13 6 8 11 11 6 8 11 12 6 8 11 13 6 8 12 12 6 8 13 13 6 9 9 10 6 9 9 11 6 9 9 12 6 9 10 11 6 9 10 12 6 9 11 12 6 9 11 13 6 9 12 12 6 9 12 13 6 10 10 10 6 10 10 13 6 10 11 12 6 10 12 12 6 10 12 13 6 11 11 12 6 11 12 12 6 11 12 13 6 12 12 12 6 12 12 13 6 12 13 13 7 7 7 12 7 7 8 11 7 7 9 10 7 7 10 13 7 7 11 12 7 7 11 13 7 7 12 12 7 7 12 13 7 8 8 9 7 8 8 10 7 8 8 11 7 8 8 12 7 8 8 13 7 8 9 10 7 8 9 12 7 8 9 13 7 8 10 10 7 8 10 11 7 8 10 13 7 8 11 12 7 8 11 13 7 8 12 12 7 8 12 13 7 9 9 13 7 9 10 11 7 9 10 12 7 9 11 11 7 9 11 12 7 9 12 12 7 9 13 13 7 10 10 11 7 10 10 12 7 10 11 13 7 10 12 12 7 10 12 13 7 12 12 13 8 8 8 10 8 8 8 11 8 8 8 12 8 8 8 13 8 8 9 11 8 8 9 12 8 8 9 13 8 8 10 12 8 8 10 13 8 8 11 12 8 8 11 13 8 8 12 12 8 8 12 13 8 9 9 12 8 9 10 12 8 9 10 13 8 9 11 11 8 9 11 12 8 9 11 13 8 9 12 12 8 9 12 13 8 10 10 12 8 10 11 11 8 10 12 12 8 10 12 13 8 10 13 13 8 11 12 12 9 9 9 12 9 9 10 13 9 9 11 12 9 9 11 13 9 9 12 12 9 9 12 13 9 10 10 13 9 10 11 12 9 10 11 13 9 10 12 12 9 10 12 13 9 11 11 11 9 11 12 12 9 11 12 13 9 11 13 13 9 12 12 12 10 10 10 12 10 10 10 13 10 10 11 12 10 10 11 13 10 10 12 12 10 10 12 13 10 11 11 12 10 11 11 13 10 11 12 12 10 11 12 13 10 12 12 12 10 12 12 13 10 12 13 13 10 13 13 13 11 11 11 12 11 11 11 13 11 11 12 12 11 11 12 13 11 12 12 12 11 12 12 13 11 12 13 13 11 13 13 13 12 12 12 12 12 12 12 13 12 12 13 13 12 13 13 13

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在PHP中可以通过使用不可预测的令牌来有效防范CSRF攻击。具体方法包括:1.生成并在表单中嵌入CSRF令牌;2.在处理请求时验证令牌的有效性。

在PHP8 中,match表达式是一种新的控制结构,用于根据表达式的值返回不同的结果。1)它类似于switch语句,但返回值而非执行语句块。2)match表达式使用严格比较(===),提升了安全性。3)它避免了switch语句中可能的break遗漏问题,增强了代码的简洁性和可读性。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。

H5、小程序和APP的主要区别在于:技术架构:H5基于网页技术,小程序和APP为独立应用程序。体验和功能:H5轻便易用,功能受限;小程序轻量级,交互性好;APP功能强大,体验流畅。兼容性:H5跨平台兼容,小程序和APP受平台限制。开发成本:H5开发成本低,小程序中等,APP最高。适用场景:H5适合信息展示,小程序适合轻量化应用,APP适合复杂功能应用。

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP中的严格类型通过在文件顶部添加declare(strict_types=1);来启用。1)它强制对函数参数和返回值进行类型检查,防止隐式类型转换。2)使用严格类型可以提高代码的可靠性和可预测性,减少bug,提升可维护性和可读性。
