结论

serializen的效率远高于json,特别是在反序列化方面。

实地测试

对同一个巨大数组分别进行10000次序列化和反序列化,得到如下测试结果:测试环境

CPU: Intel i5-3317U

PHP: 7.0.12

SRV: Apache 2json_encode 2.7458431720734 s

json_decode 7.1210720539093 s

serialize 1.899829864502 s

unserialize 0.033617973327637 s

测试代码<?php

$de=[

"ok"=>23421344234,

"d3"=>['32af','23rdsf','fa3fawe','r23dsds'],

'asdfasfd'=>['sadfasdf','asdfdsf'=>'asdfa爱的色放撒地方发生但凡sfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfasfd1'=>['sadfa安抚仨人货币补偿现在vcxzvcxzsdf','asg发多少了空间dfdsf'=>'asdfasfdsdfsfa','asdf爱居兔肉色很尴尬人个人sadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfasfd2'=>['sadfasdf','asdfdsf'=>'asdfasfds阿斯顿发生dfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfasfd3'=>['sadf爱迪生范德萨发放第三asdf','asdfdsf'=>'asdfasfd阿萨德发的顺丰sdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfasfd4'=>['sadfasdf','asdfdsf'=>'asdfasfdsd阿什顿发发生的fsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfahgewrasfd'=>['sadfasdf','asdfdsf'=>'asdfa阿什顿发斯蒂芬sfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdffsadasfd'=>['sadfasdf','asdfdsf'=>'asdfasfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdaefdssfasfd'=>['sadfasdf','asdf阿斯顿发发生的dsf'=>'asdfasfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfa阿斯顿发发呆爽肤水对方43wefrasfd'=>['sadfasdf','asdfdsf'=>'asdfasfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'as阿斯蒂芬范德萨范德萨dfsdaf']],

'asdfaasdfsfd'=>['sadfasdf','asdfdsf'=>'asdfasfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'afasdfsdfasfd'=>['sadfasdf','asdfdsf'=>'asdfas阿斯顿发发生的分fdsdfsfa','as爱的色放范德萨dfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

'asdfas阿什顿发斯蒂芬法第三asdfsdffd'=>['sadfasdf','asdfdsf'=>'asdfasfdsdfsfa','asdfsadf'=>['asdfasdf',234234234,'asdfsdaf']],

array (

'battle_id'=> 257

,'user_id'=> 41248

,'user阿什顿发斯蒂芬多撒_id2'=> 23989

,'player'=> 41248

,'formation'=> Array

(

'41248'=> 1

,'23989'=> 2

)

,'result'=> 1

,'battle_type'=> 1

,'speed'=> Array

(

'41248'=> 0

,'23989'=> 0

)

)

];

$de=[

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

$de,

];

$stime = microtime(true);

for ($i = 0; $i < 10000; $i ++) {

$en=json_encode($de);

}

$etime = microtime(true);

echo "json_encode :", ($etime - $stime) ,'
';

$stime = microtime(true);

for ($i = 0; $i < 10000; $i ++) {

$de=json_decode($en);

}

$etime = microtime(true);

echo "json_decode :", ($etime - $stime) ,'
';

$stime = microtime(true);

for ($i = 0; $i < 10000; $i ++) {

$en=serialize($de);

}

$etime = microtime(true);

echo "serialize :", ($etime - $stime) ,'
';

$stime = microtime(true);

for ($i = 0; $i < 10000; $i ++) {

$de=serialize($en);

}

$etime = microtime(true);

echo "unserialize :", ($etime - $stime) ,'
';

php序列化 与json_PHP中serializen()与json_encode()的性能差异相关推荐

  1. java对象序列化去掉字段_使用序列化查找对象中的脏字段

    java对象序列化去掉字段 假设您正在开发一个将对象自动保存到数据库中的框架. 您需要检测两次保存之间所做的更改,以便仅保存已修改的字段. 如何检测脏场. 最简单的方法是遍历原始数据和当前数据,并分别 ...

  2. 使用序列化查找对象中的脏字段

    假设您正在开发一个将对象自动保存到数据库中的框架. 您需要检测两次保存之间所做的更改,以便仅保存修改过的字段. 如何检测脏场. 最简单的方法是遍历原始数据和当前数据,并分别比较每个字段. 代码如下: ...

  3. php中json_decode()和json_encode()的使用方法

    php中json_decode()和json_encode()的使用方法 json_decode对JSON格式的字符串进行编码而json_encode对变量进行 JSON 编码,需要的朋友可以参考下 ...

  4. 最长公共子序列_使用序列化查找对象中的脏字段

    最长公共子序列 假设您正在开发一个将对象自动保存到数据库中的框架. 您需要检测两次保存之间所做的更改,以便仅保存修改的字段. 如何检测脏场. 最简单的方法是遍历原始数据和当前数据,并分别比较每个字段. ...

  5. 四因素三水平正交试验表_机制砂中不同因素对混凝土性能影响研究

    作为连接胶凝材料和粗骨料的媒介,砂的掺入对混凝土强度.耐久性等起着至关重要的作用.利用机制砂替代河砂配制混凝土,石粉含量.泥含量以及砂率的选择是当前面临的主要问题,机制砂石粉含量一般10%-20%,我 ...

  6. 【Android 安装包优化】WebP 图片格式兼容与性能 ( Android 中的 WebP 图片格式兼容问题 | Android 中的 WebP 图片格式性能 )

    文章目录 一.Android 中的 WebP 图片格式兼容问题 二.Android 中的 WebP 图片格式性能 三.参考资料 一.Android 中的 WebP 图片格式兼容问题 在 Android ...

  7. 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异

    本文结合W3School的文档,分析了jQuery中 wrap() wrapAll() 与 wrapInner()的差异,并给出了图文对比教程,非常的简单实用,有需要的朋友可以参考下 今晚看书的时候发 ...

  8. C# 中的 in 参数和性能分析

    in 修饰符也是从 C# 7.2 开始引入的,它与我们上一篇中讨论的 <C# 中的只读结构体(readonly struct)>[1] 是紧密相关的. in 修饰符 in 修饰符通过引用传 ...

  9. Java 中的5个代码性能提升技巧,最高提升近10倍

    这篇文章介绍几个 Java 开发中可以进行性能优化的小技巧,虽然大多数情况下极致优化代码是没有必要的,但是作为一名技术开发者,我们还是想追求代码的更小.更快,更强.如果哪天你发现程序的运行速度不尽人意 ...

  10. 了解JavaScript中的Memoization以提高性能,再看React的应用

    英文: Understanding Memoization in JavaScript to Improve Performance 中文: 了解JavaScript中的Memoization以提高性 ...

最新文章

  1. 树莓派-格式化硬盘(U盘)为ext4格式并挂载
  2. Entity Framework中的Migrations
  3. 温州大学《深度学习》课程课件(一)
  4. 知识图谱还有哪些方向值得深入研究?这 6 篇最新论文给你答案
  5. python 判断类是否存在某个属性或方法
  6. 解决“DNS_PROBE_FINISHED_NXDOMAIN”问题
  7. [BZOJ4484][JSOI2015]最小表示(拓扑排序+bitset)
  8. U-Net源码上实现自己数据集的分割任务
  9. 散落在香山的红绳情结
  10. 微信小程序实现路线规划demo
  11. Android性能优化——启动优化简述
  12. Could not enlist in transaction on entering meta-aware object
  13. 教师公开课卡通动态通用PPT模板
  14. CSDN最全数学公式
  15. PHP 优秀资源汇集(转)
  16. 【论文学习】干旱指标相关
  17. 极线几何[Epipolar Geometry]
  18. linux解封ip,linux iptables禁IP与解封IP常用命令
  19. html 怎么显示co2字体,检测空气中二氧化碳含量的三种方法
  20. 来认识一下这些基于好友关系链和算法推荐的电影发现产品

热门文章

  1. Python进化算法之多目标优化与代码实战
  2. 多普勒效应的原理及应用 一 多普勒现象的发现
  3. 选个关注热度上升的大数据工具学习下吧
  4. sql 查询-从浆糊到清晰的过程
  5. win10系统电池图标不见了怎么恢复
  6. 四、六级考试的标准分计算方法-“710分转换表”
  7. vue 中使用 pug
  8. win10下ipv6安装与设置
  9. 协同过滤和基于内容推荐有什么区别?
  10. 关于OPENGL纹理