0

オブジェクトをphpでパックしてudp経由で送信するにはどうすればよいですか? 私は6つのプロパティを持つパケットクラスを持っています:

/** @var 32int  */
    private $headerSize;
    /** @var 32int  */
    private $highSessionID;
    /** @var 32int  */
    private $lowSessionID;
    /** @var array (char)  */
    private $signature;
     /** @var 32int  */
    private $comandID;
     /** @var 32int  */
    private $dataSize;

UDP経由で文字列を送信する単純なクライアントサーバーアプリを試しましたが、異なるタイプのデータを持つオブジェクトを送信したい

編集:私は pack と serialized function を使用しました。それらは非常に役に立ちましたが、もう1つ質問があります:

php.net のマニュアルを読みましたが、さまざまなタイプのデータをパックする方法がわかりませんでした。私はこれを試しました:

$n = ord('a');
 $buf =  pack('IS',200000000,$n);

 $array = unpack('I/S', $buf);
 foreach ($array as $key => $value)
    echo "\$array[$key] = ". $value ."<br>\n"; 

出力:

$array[1] = 97<br> 

なぜ 200000000 が出力されなかったのですか? どうすればコードを修正できますか?

どうも。

4

1 に答える 1

0
私は間違いを見つけました:

アンパックされたデータは、連想配列に格納されます。これを行うには、さまざまな形式コードに名前を付け、それらをスラッシュ / で区切る必要があります。リピーター引数が存在する場合、各配列キーには、指定された名前の後ろにシーケンス番号があります。

于 2013-10-29T11:25:39.377 に答える