Javascript PHP Ajax JSON错误:SyntaxError:JSON中位置0处出现意外标记\错误

Javascript PHP Ajax JSON错误:SyntaxError:JSON中位置0处出现意外标记\错误,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,我在一些Ajax和PHP方面遇到了问题 当我尝试向Ajax调用发送JSON响应时,会出现以下错误: SyntaxError: Unexpected token \ in JSON at position 0 使用开发工具,我看到响应中包含我的控制器,这可能是问题的原因 \Ajax\Controller\SimpleTestController{"result":{"1":"message"}} 这是什么原因造成的 大多数常见的Google/SO结果都有“当你点击/test/a

我在一些Ajax和PHP方面遇到了问题

当我尝试向Ajax调用发送JSON响应时,会出现以下错误:

    SyntaxError: Unexpected token \ in JSON at position 0
使用开发工具,我看到响应中包含我的控制器,这可能是问题的原因

    \Ajax\Controller\SimpleTestController{"result":{"1":"message"}}
这是什么原因造成的


大多数常见的Google/SO结果都有“当你点击
/test/ajax/simple_test
时,你会得到什么?”问题是当你点击页面时,你没有得到json,或者至少它的格式不好,所以你期望的json是从反斜杠
\ajax\Controller\SimpleTestController
开始的。。。你在用什么技术?哪个框架或CMS?您的任何PHP文件都在呼应您的名称空间和类名吗?@WhiteFire,我这么说是因为我刚刚测试了您的PHP代码,它返回了预期的“良好”格式的JSON:
{“result”:{“1”:“message”}
所以我认为可能是您的工作方式,控制器名称以某种方式被打印出来,它破坏了您发送的json结果。欢迎@WhiteFire,向您的
echo
feind=P问好
    $(document).on("change", '#selection', function(e) {

                var value = $(this).val();
                $.ajax({
                    type: "GET",
                    data: {'testselection': value},
                    url: '/test/ajax/simple_test',
                    dataType: 'json',
                    processResults: function(data) {
                        console.log(data);
                    },
                    error: function (xhr, ajaxOptions, thrownError){
                        console.log(thrownError);
                        console.log(xhr.statusText);
                    }
                });

            });
    <?php
    namespace Ajax\Controller;
    use Controller\BasicController;

    class SimpleTestController extends BasicController{
        public function indexAction()
        {
            if(isset($_GET['testselection'])){
                $result = array(1 => "message");
                header('Content-Type: application/json');
                echo json_encode(array("result" => $result));
            }
        }
    }
    SyntaxError: Unexpected token \ in JSON at position 0
    at JSON.parse (<anonymous>)
    at m.parseJSON (jquery-1.11.3.min.js:5)
    at e.parseJSON (jquery-migrate-1.2.1.min.js:2)
    at Pb (jquery-1.11.3.min.js:5)
    at x (jquery-1.11.3.min.js:5)
    at XMLHttpRequest.b (jquery-1.11.3.min.js:5)

    OK
    \Ajax\Controller\SimpleTestController{"result":{"1": "message"}}
    \Ajax\Controller\SimpleTestController{"result":{1: "message"}}
      "result":{1: "message"}
        1: "message"
    \Ajax\Controller\SimpleTestController