Ajax response is unicoded


Ajax response is unicoded

我有一个angular应用程序,我发出了一个ajax请求。在响应中,我应该得到true/false值,但我用包括撇号的unicode(/u0001或/u0000)得到它们。以下是代码:

角度请求/响应

$http({
            headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'},
            url: window.location.href + 'home/getItem',
            method: "POST",
            data: {date: date}
        }).success(function(data) {
            $scope.items = data;
        });

PHP响应

array_push($newsArr, array(
                'id' => 1, 
                'status' => true,
                'description' => 'George's world'
));
print json_encode($newsArr);

当我进行var_dump时,这里的响应是正确的,给出true和false。

但是我在json_encode并将响应发送回angular之后,当我在控制台中打印响应时,它会以unicode给出。

[{"id":"1","status":"'u0001","description":"'u2019"}]

为什么会这样?问题是,当我把这个印在标签里的时候,一切都好。但我需要得到true-false的anjolajax响应,以便在ng repeat中直接过滤一些数据。只有当我在网络服务器上托管应用程序并且在本地运行良好时,才会发生这种情况。

我也试过使用JSON的JSON.parse和angular.fromJson,但没有成功。我不能简单地在unicode中验证真-假。

我使用解决了这个问题

json_encode($return, JSON_UNESCAPED_UNICODE)

而不是

json_encode($return)