php smarty2 json_解码返回不同的值

php smarty2 json_解码返回不同的值,php,json,smarty2,Php,Json,Smarty2,我们只是将我们的web服务器移动到AWS EC2实例,就遇到了一个奇怪的问题 在Centos 6上,我们在EC2和旧的专用服务器上使用smarty2和php5.3(php.ini和httpd配置也移动到EC2) 以下是背后的json数据和代码: $json=“{”爬网url”:https://google.com/,“状态”:“确定”,} $smarty->assign(“数据”、$json) 模板视图: {assign var=tmp value=$data | json_decode:1}

我们只是将我们的web服务器移动到AWS EC2实例,就遇到了一个奇怪的问题

在Centos 6上,我们在EC2和旧的专用服务器上使用smarty2和php5.3(php.ini和httpd配置也移动到EC2) 以下是背后的json数据和代码:

$json=“{”爬网url”:https://google.com/,“状态”:“确定”,}

$smarty->assign(“数据”、$json)

模板视图:

{assign var=tmp value=$data | json_decode:1}

{$tmp.status}

结果:

在旧的专用服务器上:按预期显示“OK”

在EC2服务器上:显示“{”//不确定原因


请注意,服务器和2服务器上禁用的magic quote使用相同的代码库,我认为您的代码中有错误

请尝试以下代码:

PHP:


我认为你的代码有错误

请尝试以下代码:

PHP:

<?php

    $json = [
        "crawl_url" => "https://google.com/",
        "status" => "OK"
    ];

    $smarty->assign("data", json_encode($json));

?>
{assign var=tmp value=$data|json_decode:1}

{$tmp|var_dump}
{$tmp.status|var_dump}