PHP json_encode()将Undefined返回到$ .getJSON

问题描述 投票:0回答:1

我在php中创建一个数组,然后在使用$ .getJSON获取它之前使用json_encode(),但它返回Undefined。如果我只向JS发送一行它工作正常(json_encode($ classes [0]))但是当我尝试发送所有数据时它返回Undefined。有任何想法吗?

这是通过查询数据库并返回结果生成的一小部分数组...

   Array
(
    [0] => Array
        (
            [Record_Type] => S
            [Convention_ID] => 
            [Event_ID] => 19030145
            [Sponsor_ID] => Google
            [Course_ID] => 2837199
            [Last_Modified_Date_Time] => DateTime Object
                (
                    [date] => 2019-02-25 10:03:36.000000
                    [timezone_type] => 3
                    [timezone] => US/Pacific
                )

        )

    [1] => Array
        (
            [Record_Type] => S
            [Convention_ID] => 
            [Event_ID] => 19030111
            [Sponsor_ID] => Google
            [Course_ID] => 2837192
            [Last_Modified_Date_Time] => DateTime Object
                (
                    [date] => 2019-02-21 07:23:47.000000
                    [timezone_type] => 3
                    [timezone] => US/Pacific
                )

        )

这是php减去SQL语句......

$stmt = sqlsrv_query($conn, $sql);

$classes = array();
while( $class = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
    $classes[] = $class;
}

echo $_GET['callback'] . '('.json_encode($classes).')';

这是我用来获取JSON数据的Javascript ...

$(function() {
    $.getJSON("https://example/api/education.php?callback=?",
        function(data) {        
            console.log(data);          
        }
    );
});
javascript php jquery arrays json
1个回答
0
投票

我发现了这个问题。它不在SQL查询返回的数据中的代码中。此字符 是存储在数据库中的字符串的一部分。那个角色以某种方式让JSON返回Undefined。当我从数据库中删除everything时,一切正常。

© www.soinside.com 2019 - 2024. All rights reserved.