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

PHP数组串行化和JSON的效率比较

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

由于需要把一个数组存进数据库,所以考虑使用转化成字符串方法,方法基本上有两种既serialize和json_encode。
两种方法各有利弊,于是乎就对这俩讨方法做了下测试。
serialize、unserialize与json_encode、json_decode比较
s是指序列化,即serialize、unserialize
j是json
源代码:

<?php
array("I'm a gooPHP 是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高效率的选项。PHP 极其适合网站开发,其代码可以直接嵌入 HTML 代码.", 
        "I'm a good boy.",
        "a" => "PHP 是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高效率的选项。PHP 极其适合网站开发,其代码可以直接嵌入 HTML 代码", 
        2 =>"PHP 是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高效率的选项。PHP 极其适合网站开发,其代码可以直接嵌入 HTML 代码",
        'PHP 是免费的,并且使用非常广泛。同时,对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高效率的选项。PHP 极其适合网站开发,其代码可以直接嵌入 HTML 代码', 
        "I'm a good boy.",
        "I'm a good boy.", 
        "I'm a good boy.", 
        "I'm a good boy.", 
        "I'm a good", 
        "asdfnsadofhasd");
?>

1、压缩与反压缩为一圈
s:1圈用时=>4.4822692871094E-5
j:1圈用时=>9.8943710327148E-5
s-j差值:-5.4121017456055E-5
s:10圈用时=>9.608268737793E-5
j:10圈用时=>0.00071501731872559
s-j差值:-0.00061893463134766
s:100圈用时=>0.00088191032409668
j:100圈用时=>0.0079631805419922
s-j差值:-0.0070812702178955
s:1000圈用时=>0.0086770057678223
j:1000圈用时=>0.071093082427979
s-j差值:-0.062416076660156
s:10000圈用时=>0.089351177215576
j:10000圈用时=>0.71031618118286
s-j差值:-0.62096500396729
s:100000圈用时=>0.89754796028137
j:100000圈用时=>7.0866401195526
s-j差值:-6.1890921592712
s:1000000圈用时=>8.7691621780396
j:1000000圈用时=>70.856695890427
s-j差值:-62.087533712387
s:10000000圈用时=>87.145391941071
2、仅反串行化或json_decode
s:1圈用时=>2.598762512207E-5
j:1圈用时=>8.2015991210938E-5
s-j差值:-5.6028366088867E-5
s:10圈用时=>4.4107437133789E-5
j:10圈用时=>0.00051689147949219
s-j差值:-0.0004727840423584
s:100圈用时=>0.00037717819213867
j:100圈用时=>0.0050899982452393
s-j差值:-0.0047128200531006
s:1000圈用时=>0.0039620399475098
j:1000圈用时=>0.052362203598022
s-j差值:-0.048400163650513
s:10000圈用时=>0.038861989974976
j:10000圈用时=>0.51281499862671
s-j差值:-0.47395300865173
s:100000圈用时=>0.38436698913574
j:100000圈用时=>5.1456820964813
s-j差值:-4.7613151073456
s:1000000圈用时=>3.8943638801575
j:1000000圈用时=>52.551742076874
s-j差值:-48.657378196716
从上面的测试可以看出序列化比JSON效率更高,先压缩后解压时s比j快9倍左右,如果只有解压缩,s比j快15倍


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
PHP函数详解:call_user_func()使用方法发布时间:2022-07-10
下一篇:
PHP异常处理thrownewexception发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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