php smarty2 json_decode返回不同​​的值

时间:2015-10-15 15:29:02

标签: php json smarty2

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

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

  

$ json =“{”crawl_url“:”https://google.com/“,”status“:”OK“,}”

     

$ smarty-> assign(“data”,$ json);

模板视图:

  

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

     

{$ tmp.status}

结果:

  旧专用服务器上的

:按预期显示“OK”

     EC2服务器上的

:显示“{”//不确定原因

请注意,服务器和2服务器上禁用的魔术引用使用相同的代码库

1 个答案:

答案 0 :(得分:0)

我认为您的代码中有错误。

尝试以下代码:

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}