poszukuje osoby co wypełni lukę w mojej wiedzy dotyczącej wysyłania bajtasów z PHPasa
dżawasa robi to tak:
private byte[] prepareRequest(int command, long parameter) {//parsuje zmienne przed wysyłką na wartość byte byte[] bytes = new byte[6]; bytes[0] = (byte) (command >> 8); bytes[1] = (byte) (command); bytes[2] = (byte) (parameter >> 24); bytes[3] = (byte) (parameter >> 16); bytes[4] = (byte) (parameter >> 8); bytes[5] = (byte) (parameter >> 0); return bytes; } private byte[] sendAndGetResponse(byte[] request) throws IOException {//wysyła i odpiera socket.getOutputStream().write(request); InputStream in = socket.getInputStream(); byte[] response = new byte[6]; in.read(response); return response; } private int getResponseCommand(byte[] response) { //parsuje odpowiedz if(response==null || response.length != 6){ throw new IllegalArgumentException(); } int value = 0; value += ((int) response[1] & 0xffL) << (8 * 0); value += ((int) response[0] & 0xffL) << (8 * 1); return value; }
Tutaj jedno z wielu moich podejść na wesje PHP:
if(!($sock = socket_create(AF_INET, SOCK_STREAM, 0)))//tworze sobie socket { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); } if(!socket_connect($sock , 'IP' , PORT))//łącze się { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); } $message = 121; $parameter = 0; $bytes[0] = $message >> 8; $bytes[1] = $message; $bytes[2] = $parameter >> 24; $bytes[3] = $parameter >> 16; $bytes[4] = $parameter >> 8; $bytes[5] = $parameter >> 0; //Send the message to the server { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); } $data = socket_read($sock,6);//TUTAJ CZEKAM NA ODPOWIEDZ ALE SOECKECIK DO MNIE NIE CHCE MÓWIĆ ;)
Może ktosik cosik podpowiedzieć?