listen('192.168.1.55', 50000); while(true) { $cs = $net->accept(); while($cs) { try{ $ret = $net->recv_bytes($cs, 1024); abc($ret); //println($ret); } catch (Exception $e) { //printf('cs close'); break; } } } $net->close(); //abc处理读取到的卡(4字节); function abc($ret) { $len = $ret[4]; if($len < 14) { //printf('无效数据'); return ; } // $count = $ret[9]; $count = ($count - 3) / 4; // for($i=0; $i<$count; $i++) { $idx = 10 + ($i * 4); $card = sprintf("%02X%02X%02X%02X", $ret[$idx+0], $ret[$idx+1], $ret[$idx+2], $ret[$idx+3]);//这是获取到的卡数据(按文档意思可能会读到多张卡,处理这个$card就可以了) printf('card['.$i.']>>'.$card.' | '); } } ?>