Laravel使用ajax请求返回空的json对象

时间:2016-11-02 14:17:34

标签: javascript jquery json ajax laravel

我有一个ajax请求正在调用一个php函数,它正在对一些结果进行排序并返回一个对象数组。

返回包含我想要的结果但是当我使用Response :: json($ result)将其返回时,数组很好地返回但是使用空数组(在javascript中)。

public static function getResult($category = null, $artist = null, $search = null, $data)
{
    $result = [];

    if ($category != null)
    {
        if ($category < 20)
        {
            foreach ($data as $key => $value)
            {
                if (is_array($value->getCategories()))
                {
                    foreach ($value->getCategories() as $key1 => $value1)
                    {
                        if ($value1 == $category)
                        {
                            array_push($result, $value);
                        }
                    }
                }else {
                    if ($value->getCategories() == $category)
                    {
                        array_push($result, $value);
                    }
                }
            }
        }
    }

    if ($artist != null)
    {
        foreach ($data as $key => $value)
        {
            if (stripos(strtolower($value->getArtist()), strtolower($artist)) !== false)
            {
                array_push($result, $value);
            }
        }
    }

    if ($search != null)
    {
        foreach ($data as $key => $value)
        {
            if (stripos(strtolower($value->getArtist()), strtolower($search)) !== false || stripos(strtolower($value->getTitle()), strtolower($search)) !== false)
            {
                array_push($result, $value);
            }
        }
    }

    return $result;
}

路线

Route::get('/browse/categories/{id}', function($id){
$result = App\Http\Controllers\browseController::getResult($id, null, null, session("TotalShop"));
// return json_encode(count($result));
return response()->json($result);
});

的Javascript

$(".categories").click(function(event){
    $.get("/browse/categories/" + event.target.id, function(data){
        console.log(data);
    });
});

那么,我该怎么做才能在javascript部分获取我的php对象的内容?

1 个答案:

答案 0 :(得分:0)

经过一些研究,我需要将一个php数组而不是一个Php对象传递给我的Json响应。