首页 > 后端开发 > php教程 > mysql - PHP的一个库,求详细信息。

mysql - PHP的一个库,求详细信息。

WBOY
发布: 2016-09-08 08:44:02
原创
1012 人浏览过

经常性闭门造车,对PHP其他的事了解甚少。
今天在研究Typeche的时候又遇到了类似:

<code>a:2:{s:7:"logoUrl";N;s:12:"sidebarBlock";a:5:{i:0;s:15:"ShowRecentPosts";i:1;s:18:"ShowRecentComments";i:2;s:12:"ShowCategory";i:3;s:11:"ShowArchive";i:4;s:9:"ShowOther";}}</code>
登录后复制
登录后复制
<code><?php exit;//a:4:{i:4;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E4%B8%8D%E7%9D%A1";s:7:"tagname";s:6:"不睡";s:3:"tid";i:2;}}i:3;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E6%B0%B4%E6%B0%B4";s:7:"tagname";s:6:"水水";s:3:"tid";i:1;}}i:2;a:0:{}i:1;a:0:{}}</code></code>
登录后复制
登录后复制

的数据库配置,想知道这个格式的配置的相关信息,百度也不好百度,今天跟踪代码也没找到,求各位大大指点一下。

回复内容:

经常性闭门造车,对PHP其他的事了解甚少。
今天在研究Typeche的时候又遇到了类似:

<code>a:2:{s:7:"logoUrl";N;s:12:"sidebarBlock";a:5:{i:0;s:15:"ShowRecentPosts";i:1;s:18:"ShowRecentComments";i:2;s:12:"ShowCategory";i:3;s:11:"ShowArchive";i:4;s:9:"ShowOther";}}</code>
登录后复制
登录后复制
<code><?php exit;//a:4:{i:4;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E4%B8%8D%E7%9D%A1";s:7:"tagname";s:6:"不睡";s:3:"tid";i:2;}}i:3;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E6%B0%B4%E6%B0%B4";s:7:"tagname";s:6:"水水";s:3:"tid";i:1;}}i:2;a:0:{}i:1;a:0:{}}</code></code>
登录后复制
登录后复制

的数据库配置,想知道这个格式的配置的相关信息,百度也不好百度,今天跟踪代码也没找到,求各位大大指点一下。

php序列化的结果
通过unserialize可以将这个字符串转为php变量。

今天强行想找如下格式的储存文件是由啥生成的:

<code>a:4:{i:4;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E4%B8%8D%E7%9D%A1";s:7:"tagname";s:6:"不睡";s:3:"tid";i:2;}}i:3;a:1:{i:0;a:3:{s:6:"tagurl";s:18:"%E6%B0%B4%E6%B0%B4";s:7:"tagname";s:6:"水水";s:3:"tid";i:1;}}i:2;a:0:{}i:1;a:0:{}}</code>
登录后复制

妈的智障,先是在Typecho中找了3个小时,使出浑身解数还是没发现。。。。。。
吐血的是,联想到Emlog这个PHP程序的缓存就是这种格式的,MDZZ的我稍微一跟踪就看到了代码:

<code class="php">$cacheData = serialize($tag_cache);
$this->cacheWrite($cacheData, 'tags');</code>
登录后复制

一切水落石出了,MDZZ。。。。亏我花了3小时,太他妈浪费时间了!

<code class="php">    function MDZZ()
    {
        $array=['name'=>'DXKite','type'=>'智障'];
        $str=serialize($array);
        var_dump($str);
        var_dump(unserialize($str));
    }</code>
登录后复制

输出:

<code>string(54) "a:2:{s:4:"name";s:6:"DXKite";s:4:"type";s:6:"智障";}" array(2) { ["name"]=> string(6) "DXKite" ["type"]=> string(6) "智障" }</code>
登录后复制

php语言里,数组内容想要直接保存至数据库中,经常会用到serialize,但是呢,serialize经常会出现一些莫名其妙的错误,encode编码效率不如json_encode,且生成编码量比json_encode多。
建议使用json_encode。

做缓存经常用到serialize

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板