Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[教程] discuz php json_decode 返回值为null

[复制链接]
eleven0220 发表于 2013-10-15 16:35:49 | 显示全部楼层 |阅读模式

今天工作中碰到一个很诡异的问题。从memcache中取出的json字符串无法解析。返回值为null。

我在做一个游戏的认证接口,客户端传入一串加密过的token,我解密以后去memcache中获取用户认证数据。

这段数据是游戏服务器端写入进memcache中的。

我把数据读出来以后,怎么都解析不了。但是打印出来没问题。

去google了一下,都是说双引号和单引号的问题。

但是我把打印出来的字符串直接放入php文件中是可以解析的,

这就排除了双引号和单引号的问题。

接着用var_dump查看字符串,发现字符数目不对。

反应过了,应该是多了隐藏字符。

接着把字符串的ascll码打印出来。

发现多了一个"\0"这个字符。马上反应过了,服务器端程序是用C写的,在C中。字符串是以"\0"结尾。

把这个小尾巴也保存进了memecache中了。哈哈。

终于解决了。用str_replace("\0","",$str);替换掉这个小尾巴就好了。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-27 15:28 , Processed in 0.023061 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表