ssxzcb
V2EX  ›  PHP

php 如何用如下形式的报文与远程服务器进行通信

  •  
  •   ssxzcb · Sep 23, 2016 · 3706 views
    This topic created in 3532 days ago, the information mentioned may be changed or developed.

    21 replies    2016-09-24 15:22:53 +08:00
    gouchaoer
        1
    gouchaoer  
       Sep 23, 2016   ❤️ 1
    这是要求双工通信, websocket 吧。。。。
    liuxu
        2
    liuxu  
       Sep 23, 2016   ❤️ 1
    base_convert() 函数在任意进制之间转换数字。
    base_convert(number,frombase,tobase)
    参数 描述
    number 必需。原始值。
    frombase 必需。数字原来的进制。
    tobase 必需。要转换的进制。
    liuxu
        3
    liuxu  
       Sep 23, 2016   ❤️ 1
    貌似我打错了, php 貌似只能是 http 请求吧,建立在 tcp/ip 上,底层它控制不了
    micookie
        4
    micookie  
       Sep 23, 2016   ❤️ 1
    http://www.php.net/manual/zh/function.fsockopen.php

    看下这个 fsockopen ,以前用这个做过 telnet
    Jakesoft
        5
    Jakesoft  
       Sep 23, 2016   ❤️ 1
    @liuxu 那说明你还没有把 php 用到极致
    liuxu
        6
    liuxu  
       Sep 23, 2016   ❤️ 1
    @Jakesoft

    我想起了,以前用 php 做过 socket 编程。。太久忘记了。。
    millken
        7
    millken  
       Sep 23, 2016   ❤️ 1
    substr,pack,unpack
    ssxzcb
        8
    ssxzcb  
    OP
       Sep 23, 2016
    @millken 有没有相应的 demo 我参考下呢
    feiyuanqiu
        9
    feiyuanqiu  
       Sep 23, 2016   ❤️ 1
    这个报文可以用 pack 函数构建, 用 unpack 解析
    wesley
        10
    wesley  
       Sep 23, 2016   ❤️ 1
    socket +字符串函数就行, pack/unpack 都不需要
    feiyuanqiu
        11
    feiyuanqiu  
       Sep 23, 2016   ❤️ 1
    看错了...字节看成位了
    npc0der
        12
    npc0der  
       Sep 23, 2016   ❤️ 1
    bombless
        13
    bombless  
       Sep 23, 2016   ❤️ 1
    pack 和 unpack 还是必要的,方便一些。
    php 建立套接字挺方便的(实际上,都差不多, 233
    cover
        14
    cover  
       Sep 23, 2016   ❤️ 1
    23333 ,我觉得写个 java 程序后台跑。。。
    gouchaoer
        15
    gouchaoer  
       Sep 23, 2016 via Android   ❤️ 1
    workerman 和 swoole 都内置了 websocket
    zhs227
        16
    zhs227  
       Sep 23, 2016   ❤️ 1
    pack 和 unpack 编解码。还需要一个异步 socket 框架,用命令行模式跑。楼上说的是两种常见的
    AbrahamGreyson
        17
    AbrahamGreyson  
       Sep 23, 2016   ❤️ 1
    文件里并没有说要要进行双工通信,看起来更像是异步的。
    PHP 发请求直接 CURL 发呀,字节数就是字符数,根本没有任何技术障碍。
    realpg
        18
    realpg  
    PRO
       Sep 23, 2016   ❤️ 1
    socket 扩展, fsocksopen
    wdlth
        19
    wdlth  
       Sep 23, 2016   ❤️ 1
    我又想起了 APNS 推送那个蛋疼的数据结构……
    byteli
        20
    byteli  
       Sep 23, 2016   ❤️ 1
    就是 socket 编程那一套,可以在 tcp 的基础上自己实现这个协议,如果想使用框架可以考虑 swoole
    dawniii
        21
    dawniii  
       Sep 24, 2016   ❤️ 1
    按文档给的协议格式把数据用 pack 打包,然后连接 socket 发送就行了。
    请求 socket 的方法自己写也行,用 workerman 也不错。如果需要接收对方数据的服务端的话。用 workerman 起一个也很方便。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4146 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 00:17 · PVG 08:17 · LAX 17:17 · JFK 20:17
    ♥ Do have faith in what you're doing.