mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-19 04:52:59 +01:00
35 lines
679 B
PHP
Executable File
35 lines
679 B
PHP
Executable File
<?php
|
|
|
|
// serialized data
|
|
$msgs = array(pack("C*", 0x93, 0x01, 0x02, 0x03, 0x92), pack("C*", 0x03, 0x09, 0x04));
|
|
|
|
// streaming deserialize
|
|
$unpacker = new MessagePack();
|
|
$unpacker->initialize();
|
|
$buffer = "";
|
|
$nread = 0;
|
|
|
|
foreach($msgs as $msg){
|
|
$buffer = $buffer . $msg;
|
|
|
|
while(true){
|
|
$nread = $unpacker->execute($buffer, $nread);
|
|
|
|
if($unpacker->finished()){
|
|
$msg = $unpacker->data();
|
|
var_dump($msg);
|
|
|
|
$unpacker->initialize();
|
|
$buffer = substr($buffer, $nread);
|
|
$nread = 0;
|
|
|
|
if(!empty($buffer)){
|
|
continue;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
?>
|
|
|