首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP的json_decode在不同服务器上的行为不同

PHP的json_decode在不同服务器上的行为不同
EN

Stack Overflow用户
提问于 2014-04-21 20:56:32
回答 1查看 675关注 0票数 2

我正在设置一个新服务器,并发现这段代码片段在每个设置中的行为都不同:

代码语言:javascript
复制
function isJson($string) {
    json_decode($string);
    return (json_last_error() == JSON_ERROR_NONE);
}

echo isJson("2014-04-21") ? "is json" : "is not json";

旧服务器有:

  • PHP 5.5.5
  • 启用json支持
  • json版本1.2.1
  • 结果:“不是json”
  • Var_dump结果(json_decode(“2014-04-21”)):NULL

新服务器有:

  • PHP 5.5.11
  • 启用json支持
  • json版本1.3.2
  • JSON-C版本(捆绑) 0.11
  • 结果:"is json“
  • Var_dump结果(json_decode(“2014-04-21”)):int(2014年)

我想知道为什么会发生这种差异,或者在哪里找出这种差异发生的原因。

EN

回答 1

Stack Overflow用户

发布于 2014-04-21 21:01:06

这显然是PHP中的一个bug :-/

旧的答案:

容易多了..。

代码语言:javascript
复制
function isJson($string) {
    return json_decode($string) !== NULL;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23205871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档