PHP数组到jQuery,使用json_encode:& qout;而不是"

时间:2015-01-06 17:09:40

标签: php jquery symfony twig silex

我正在尝试将一个php数组发送到jquery

这是我在json编码之前的数组:

Array ( [0] => 30-Dec [1] => 31-Dec [2] => 1-Jan [3] => 2-Jan [4] => 3-Jan [5] => 4-Jan [6] => 5-Jan [7] => 6-Jan ) 

这是在json编码之后:

["30-Dec","31-Dec","1-Jan","2-Jan","3-Jan","4-Jan","5-Jan","6-Jan"]

如果我使用json编码数组在jquery中创建一个变量并在控制台中打印它,我得到以下内容:

[&quot ;30-Dec&quot ;,"31-Dec&quot ;,&quot ;1-Jan&quot ;,&quot ;2-Jan&quot ;,&quot ;3-Jan&quot ;,&quot ;4-Jan&quot ;,&quot ;5-Jan&quot ;,&quot ;6-Jan&quot ;]

但是没有t;

之间的空格

我正在为我的网站使用twig和silex。

修改
这是我的代码PHP代码

function getDates($ startTime,$ endTime){             $ day = 86400;

        $format = 'j-M';

        $startTime = strtotime($startTime);

        $endTime = strtotime($endTime);

        $numDays = round(($endTime - $startTime) / $day) + 1;

        $days = array();

        for ($i = 0; $i < $numDays; $i++) {

            $days[] = date($format, ($startTime + ($i * $day)));

        }

        return $days;

    }

    $days = getDates($lastday, $today);

    $days = json_encode($days);

这是我的twig / jquery代码

var days =&#39; {{days}}&#39;;

的console.log(天);

2 个答案:

答案 0 :(得分:1)

决定如何向用户呈现给定的数据集是视图层的角色。从你的php代码中删除json_encode调用,它应该返回一个简单的数组。把它传递到树枝并在那里进行编码:

{{ days|json_encode }}

答案 1 :(得分:0)

如前所述,charlietfl模板引擎/ Twig正在逃避您的数据。一个简单的解决方法应该是应用|raw过滤器[0]。

[0] http://twig.sensiolabs.org/doc/filters/raw.html