Доброе время суток гуру PHP, Вообщем есть задача кинуть данные на определенный порт, считать и разобрать ответ. Как отрыть порт и т.д. прошу не рассказывать. Лучше расскажите как кинуть на порт массив байт. Есть исходник на делфи, там делают так: Код (Text): CopyMemory(@MSG[7],@s,4); CopyMemory(@MSG[11],@x,1); CopyMemory(@MSG[12],@Number.Text[1],x); CopyMemory(@msg[12+x],@y,1); CopyMemory(@msg[13+x],@Provider.Text[1],y); CopyMemory(@msg[13+x+y],@z,1); CopyMemory(@msg[14+x+y],@KEY.Text[1],z); Потом msg пишется в порт и все понятно. Но вот как в PHP составить похожий массив???
P.S. про pack и unpack смотрел но немного не понял на каком этапе применять. И еще не советуйте писать такие вещи на д.р. языках, нет возможности.
на этапе подготовки msg, естественно - вместо CopyMemory. Там же есть строка типизации с кучей вариантов, далее идут переменные.
Речь идет про TCP/IP порт или про COM-порт компьютера?! Если второе - то забей! т.е. теоритичесски это возможно, но на практике... сложно, нудно и все равно работать не будет
Ребят, опять же говорю что ни на C ни на C++ написать возможности нет. В проекте принципиально это должно работать на PHP. Речь идет о TCP пакетах. Что за ночь надумал (так примерно). 1. Сначало составляю пакет в обычном массиве. 2. Прохожусь по массиву и привожу к типу методом pack(). 3. Код (Text): $socket = socket_create(AF_INET, SOCK_STREAM, getprotobyname('tcp')); socket_connect($socket, 'IP_ADDRESS', '1984'); socket_write($socket, DATA, BYTE_LENGTH); ............... // .................... (чтение с сокета, закрытие сокета) собственно почти так как сказал Mae Stro. Пока не особо получается, но надеюсь на удачу =) выложу сюда если выйдет.
Если кому-то будет интересно, провозившись часа 3 собрал пакет (методом pack). Но наткнулся на проблему шифрования данных. Было решено написать все-таки сторонее приложение =( На PHP проблему не решил.