• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP msgpack_unserialize函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中msgpack_unserialize函数的典型用法代码示例。如果您正苦于以下问题:PHP msgpack_unserialize函数的具体用法?PHP msgpack_unserialize怎么用?PHP msgpack_unserialize使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了msgpack_unserialize函数的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: test

function test($type, $variable, $test)
{
    $serialized = msgpack_serialize($variable);
    $unserialized = msgpack_unserialize($serialized);
    var_dump($variable);
    var_dump($unserialized);
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:7,代码来源:025.php


示例2: test

function test($type, $variable)
{
    $unserialized = msgpack_unserialize(pack('H*', $variable));
    echo $type, PHP_EOL;
    echo $variable, PHP_EOL;
    var_dump($unserialized);
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:7,代码来源:050.php


示例3: test

function test($type, $variable, $test)
{
    $serialized = pack('H*', $variable);
    $unserialized = msgpack_unserialize($serialized);
    echo $type, PHP_EOL;
    echo bin2hex($serialized), PHP_EOL;
    var_dump($unserialized);
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:8,代码来源:020.php


示例4: test

function test($type, $variable)
{
    $serialized = msgpack_serialize($variable);
    $unserialized = msgpack_unserialize($serialized);
    echo $type, PHP_EOL;
    echo bin2hex($serialized), PHP_EOL;
    var_dump($unserialized);
    echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL;
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:9,代码来源:006.php


示例5: test

function test($type, $variable, $test)
{
    $serialized = msgpack_serialize($variable);
    $unserialized = msgpack_unserialize($serialized);
    echo $type, PHP_EOL;
    echo bin2hex($serialized), PHP_EOL;
    var_dump($unserialized);
    echo $test || $unserialized === null ? 'OK' : 'FAIL', PHP_EOL;
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:9,代码来源:023.php


示例6: unpack

 /**
  */
 public function unpack($data)
 {
     ini_set('track_errors', 1);
     $out = @msgpack_unserialize($data);
     ini_restore('track_errors');
     if (!isset($php_errormsg)) {
         return $out;
     }
     throw new Horde_Pack_Exception('Error when unpacking Msgpack data.');
 }
开发者ID:jubinpatel,项目名称:horde,代码行数:12,代码来源:Msgpackserialize.php


示例7: unserialize

 /**
  * Deserialize msgpack string to PHP value
  *
  * @param  string $serialized
  * @return mixed
  * @throws Exception\RuntimeException on msgpack error
  */
 public function unserialize($serialized)
 {
     if ($serialized === static::$serialized0) {
         return 0;
     }
     ErrorHandler::start();
     $ret = msgpack_unserialize($serialized);
     $err = ErrorHandler::stop();
     if ($ret === 0) {
         throw new Exception\RuntimeException('Unserialization failed', 0, $err);
     }
     return $ret;
 }
开发者ID:idwsdta,项目名称:INIT-frame,代码行数:20,代码来源:MsgPack.php


示例8: test

function test()
{
    $serialized = msgpack_serialize(null);
    $serialized = substr($serialized, 0, -1);
    $length = mt_rand(1, 255);
    for ($i = 0; $i < $length; ++$i) {
        $serialized .= chr(mt_rand(0, 255));
    }
    // if returned null everything is OK
    if (($unserialized = msgpack_unserialize($serialized)) === null) {
        return true;
    }
    // whole data is read?
    if ($serialized !== msgpack_serialize($unserialized)) {
        return true;
    }
    echo bin2hex($serialized), "\n";
    var_dump($unserialized);
    return false;
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:20,代码来源:040.php


示例9: __construct

}
class Foo
{
    public $parent;
    public $children;
    public function __construct()
    {
        $this->parent = null;
        $this->children = array();
    }
    public function addChild(Foo $obj)
    {
        $this->children[] = $obj;
        $obj->setParent($this);
    }
    public function setParent(Foo $obj)
    {
        $this->parent = $obj;
    }
}
$obj1 = new Foo();
for ($i = 0; $i < 10; $i++) {
    $obj = new Foo();
    $obj1->addChild($obj);
}
$o = msgpack_unserialize(msgpack_serialize($obj1->children));
foreach ($obj1->children as $k => $v) {
    $obj_v = $v;
    $o_v = $o[$k];
    echo gettype($obj_v), "  ", gettype($o_v), PHP_EOL;
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:31,代码来源:033.php


示例10: print_r

<?php

class test
{
}
print_r(msgpack_unserialize(msgpack_serialize(new test())));
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:6,代码来源:issue023.php


示例11: strlen

         $igbinary_size += strlen($pack);
         if ($unpack === $value || is_object($value) && $unpack == $value) {
             $igbinary_status = 'OK';
         }
     }
     //msgpack
     $pack = null;
     $unpack = null;
     $t = new Benchmark_Timer();
     $t->start();
     for ($i = 0; $i < $loop; $i++) {
         $pack = msgpack_serialize($value);
     }
     $t->setMarker('msgpack_serialize');
     for ($i = 0; $i < $loop; $i++) {
         $unpack = msgpack_unserialize($pack);
     }
     $t->stop();
     //$t->display();
     $profiling = $t->getProfiling();
     unset($t);
     $msgpack_pack += $profiling[1]['diff'];
     $msgpack_unpack += $profiling[2]['diff'];
     $msgpack_size += strlen($pack);
     if ($unpack === $value || is_object($value) && $unpack == $value) {
         $msgpack_status = 'OK';
     }
 }
 $serialize_pack /= $retry;
 $serialize_unpack /= $retry;
 $serialize_size /= $retry;
开发者ID:kazuho,项目名称:msgpack,代码行数:31,代码来源:benchmark.php


示例12: StdClass

<?php

class Demo extends ArrayObject
{
}
$obj = new StdClass();
$demo = new Demo();
$demo[] = $obj;
$demo[] = $obj;
$data = array($demo, $obj, $obj);
print_r(msgpack_unserialize(msgpack_serialize($data)));
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:11,代码来源:bug012.php


示例13: msgpack_unserialize

    // truncated
    for ($i = 0; $i < $len - 1; $i++) {
        $v = msgpack_unserialize(substr($str, 0, $i));
        if (is_object($data) || is_array($data)) {
            if ($v !== null && $v !== false && $v != $data) {
                echo "output at {$i}:\n";
                var_dump($v);
            }
        } else {
            if ($v !== null && $v == $data) {
                continue;
            } else {
                if ($v !== null && $v !== $data) {
                    echo "output at {$i}:\n";
                    var_dump($v);
                    echo "vs.\n";
                    var_dump($data);
                }
            }
        }
    }
    // padded
    $str .= "98398afay21_ ";
    $v = msgpack_unserialize($str);
    if ($v !== $data && !(is_object($data) && $v == $data)) {
        echo "padded should get original\n";
        var_dump($v);
        echo "vs.\n";
        var_dump($data);
    }
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:31,代码来源:030.php


示例14: decode

 /**
  * 数据解码。
  * 
  * @param string $data 指定数据对象。
  * @param int $format 指定编码格式。(默认值: 1 | JSON, 其它可用值: Encoder::MSGPACK, Encoder::XML)
  * @return array|mixed
  * @throws NotImplementedException
  */
 static function decode($data, $format = 1)
 {
     $s = false;
     switch ($format) {
         case self::JSON:
             $s = json_decode($data, true);
             break;
         case self::MSGPACK:
             $s = msgpack_unserialize($data);
             break;
         case self::IGBINARY:
             $s = igbinary_unserialize($data);
             break;
         case self::XML:
             throw new NotImplementedException('尚未实现此接口。', -1);
             break;
     }
     return $s;
 }
开发者ID:heesey,项目名称:LeePHP-Socket,代码行数:27,代码来源:Encoder.php


示例15: array

<?php

$data_array = array();
for ($i = 0; $i < 5000; $i++) {
    $data_array[mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)] = mcrypt_create_iv(10, MCRYPT_DEV_URANDOM);
}
$time_start = microtime(true);
for ($i = 0; $i < 4000; $i++) {
    $s = msgpack_serialize($data_array);
    $array = msgpack_unserialize($s);
    unset($array);
    unset($s);
}
$time_end = microtime(true);
if ($time_end <= $time_start) {
    echo "Strange, {$i} iterations ran in infinite speed: {$time_end} <= {$time_start}", PHP_EOL;
} else {
    $speed = $i / ($time_end - $time_start);
    printf("%d iterations took %f seconds: %d/s (%s)\n", $i, $time_end - $time_start, $speed, $speed > 400 ? "GOOD" : "BAD");
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:20,代码来源:035.php


示例16: dl

<?php

if (!extension_loaded('msgpack')) {
    dl('msgpack.' . PHP_SHLIB_SUFFIX);
}
$closure = function ($x) {
    return $x + 1;
};
class Foo implements Serializable
{
    public function serialize()
    {
        echo "Should not be run.\n";
    }
    public function unserialize($str)
    {
        echo "Should not be run.\n";
    }
}
$array = array($closure, new Foo());
try {
    $ser = msgpack_serialize($array);
    echo "Serialized closure.\n";
    $unser = msgpack_unserialize($ser);
    echo "Unserialized closure.\n";
    var_dump($unser);
} catch (Exception $e) {
    echo "Got exception.\n";
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:29,代码来源:042.php


示例17: dl

<?php

if (!extension_loaded('msgpack')) {
    dl('msgpack.' . PHP_SHLIB_SUFFIX);
}
$datas = array(87817, -1, array(1, 2, 3, "testing" => 10, "foo"), true, false, 0.187182, "dakjdh98389", null, (object) array(1, 2, 3));
error_reporting(0);
foreach ($datas as $data) {
    $str = msgpack_serialize($data);
    $len = strlen($str);
    for ($j = 0; $j < 200; $j++) {
        for ($i = 0; $i < $len - 1; $i++) {
            $sub = substr($str, 0, $i);
            $sub .= mcrypt_create_iv(30, MCRYPT_DEV_URANDOM);
            $php_errormsg = null;
            $v = msgpack_unserialize($sub);
        }
    }
}
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:19,代码来源:034.php


示例18: array

<?php

$data = array();
$tmp =& $data;
for ($i = 0; $i < 1024; $i++) {
    $tmp[] = array();
    $tmp =& $tmp[0];
}
$newdata = msgpack_unserialize(msgpack_serialize($data));
var_dump($newdata == $data);
开发者ID:chenyongze,项目名称:msgpack-hhvm,代码行数:10,代码来源:bug002.php



注:本文中的msgpack_unserialize函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP mso_add_cache函数代码示例发布时间:2022-05-15
下一篇:
PHP msgpack_unpack函数代码示例发布时间:2022-05-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap