本示例使用的读卡器:RFID网络WIFI无线TCP/UDP/HTTP可编程二次开发读卡器POE供电语音-淘宝网 (taobao.com)
本示例使用的读卡器:RFID网络WIFI无线TCP/UDP/HTTP可编程二次开发读卡器POE供电语音-淘宝网 (taobao.com)
0) { //可以直接使用JSON来解板,此处统一替换成字符串处理 $request = str_replace("{", "", $request); $request = str_replace("}", "", $request); $request = str_replace("\"", "", $request); $request = str_replace(":", "=", $request); $request = str_replace(",", "&", $request); } } $Fields = explode("&", $request); $conuts = count($Fields); for ($p = 0; $p < $conuts; $p++) { $para = explode("=", $Fields[$p]); switch ($para[0]) { case "info": $info = $para[1]; break; case "jihao": $jihao = $para[1]; break; case "cardtype": $cardtype = $para[1]; $typenum = hexdec($cardtype) % 16; //typenum=1 ID卡,2 HID卡,3 T5557卡,4 EM4305卡,5 IC卡,6 二代身份证,7 是15693卡,IClass" $pushortake = intval(hexdec($cardtype) / 128); //pushortake=0 表示读卡,>0表示卡离开感应区 break; case "card": $card = $para[1]; break; case "data": $data = $para[1]; break; case "dn": $dn = $para[1]; break; case "status": $status = $para[1]; break; } } if(strlen($info)>0 and strlen($info)>0) { if ($pushortake == 0) //播报的中文语音,[v8]表示语音大小,取值v1 到 v16, TTS中文语音要转换编码 $ChineseVoice = "[v8]" . GetChineseCode("读取卡号[n1]") . $card; else $ChineseVoice = "[v8]" . GetChineseCode("卡号[n1]") . $card . GetChineseCode("离开感应区"); //此处可加入业务对数据库的查询、删除、增加、修改等操作,结果以文字、语音信息回应 $DisplayStr = "{" . GetChineseCode("卡号") . ":}"; //显示的文字,{}内文字可以高亮显示,中文必须转换编码,英文字符、数字等不需要转换 $DisplayStr = $DisplayStr . substr($card . " ", 0, 12); $DisplayStr = $DisplayStr . substr(date('Y-m-d H:i:s', time()), 2, 17); //Response=1是固定的回应头信息+接收的包序号+显示文字+显示延时秒数+蜂鸣响声代码+TTS语音 $ResponseStr = "Response=1," . $info . "," . $DisplayStr . ",20,1," . $ChineseVoice; } return $ResponseStr; } catch (Exception $e1) { echo "Request ERR:".$e1."\n"; }}//获取中文汉字GB2312编码,显示中文、TTS中文语音必须转换编码function GetChineseCode($inputstr){ if(mb_detect_encoding($inputstr, 'UTF-8', true) === true) $gbkstr=iconv("UTF-8","GB2312",$inputstr); //中文必段强制使用GB2312编码格式 else $gbkstr=$inputstr; $strlens=strlen($gbkstr); $hexcode=""; for($i=0;$i<$strlens;$i++){ if($i % 2 ==0) { $hexcode = $hexcode . "\\x"; } $byte = ord($gbkstr[$i]); $b=substr('00'.dechex($byte ),-2); $hexcode=$hexcode.$b; } return $hexcode;}
来源地址:https://blog.csdn.net/zhangjin7422/article/details/132320048
--结束END--
本文标题: PHP实现轻量级WEB服务器接收HTTP提交的RFID刷卡信息并回应驱动读卡器显示播报语音
本文链接: https://lsjlt.com/news/390495.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0