V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
g8287694
V2EX  ›  程序员

PHP 和 C++ 交互 怎么才能解析 C++ 传过来的值?

  •  
  •   g8287694 · 2017-08-24 20:12:43 +08:00 · 3067 次点击
    这是一个创建于 2638 天前的主题,其中的信息可能已经有所发展或是发生改变。
           $str='AQASAAAAheoBB3MAdQBjAGMAZQBzAHMA';
           $str=base64_decode($str);
           var_dump($str);
    
    

    得到的值是

     ' � �����  s�u�c�c�e�s�s�'
    

    AQASAAAAheoBB3MAdQBjAGMAZQBzAHMA 这个为传递过来的值 base64 加密后的值,我问下了说每个字节 8 位 然后用

    unpack ('C8', $str)
    

    解析到的也不是实际传递过来的值, C++同事说传递过来的是 60037 + 1 + "success" 是我忽略了什么地方吗?

    6 条回复    2017-08-25 11:05:52 +08:00
    g8287694
        1
    g8287694  
    OP
       2017-08-24 21:13:36 +08:00
    擦 问了服务器老大 终于知道怎么解析了。。。。
    liverpool08
        2
    liverpool08  
       2017-08-25 09:11:26 +08:00
    不要自问自答呀,说说怎么解析的
    paragon
        3
    paragon  
       2017-08-25 09:39:06 +08:00
    目测大端序?
    NeverSmile
        4
    NeverSmile  
       2017-08-25 09:49:11 +08:00
    楼主速来填坑!
    aksoft
        5
    aksoft  
       2017-08-25 10:52:04 +08:00
    挖坑者自焚,谢谢合作
    g8287694
        6
    g8287694  
    OP
       2017-08-25 11:05:52 +08:00
    @liverpool08
    @NeverSmile
    @aksoft
    汗。我不知道我描述的清不清楚。
    C++ 和 PHP 走的 socket,然后 C++ 是游戏服务器,传递过来的是按照 C++的一个包,
    详细的结构就为
    2 字节的 int16 描述包类型
    4 字节的 int32 描述包长度
    2 字节的 验证字节
    1 字节的空白
    然后才是具体信息
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5656 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 06:29 · PVG 14:29 · LAX 22:29 · JFK 01:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.