Как декодировать объект JSON в Laravel


Как декодировать объект JSON в Laravel

12.03.2016 12:33:30 Просмотров 11 Источник

Я хочу, чтобы декодировать галерея массива JSON-объектов в фреймворк Laravel 5.1. мой JSON-это:

{
  "title": "aaaaaaaaaaaaaaaa",
  "category_id": "1",
  "user_id": "1",
  "gallery": "[{name: \"XCB808tvXNpqXKqekA2HlkJ8H.jpg\",size:5112},{name: \"s6kA6B0e5m1sdSAjPXqNwtiy4.jpg\", size: 13135}]"
}

Когда я использую этот код, верните мне null:

public function store(Request $request)
    {
         $json = json_decode($request['gallery'],true);
         return $json;
    }
}

и это результат dd($request['gallery'])

[{'name': "XCB808tvXNpqXKqekA2HlkJ8H.jpg",'size':5112},{'name': "s6kA6B0e5m1sdSAjPXqNwtiy4.jpg", 'size': 13135}]
У вопроса есть решение - Посмотреть?

Ответы - Как декодировать объект JSON в Laravel / How to Decode JSON object in Laravel

Tibin Paul

12.03.2016 12:59:19

Я не совсем уверен в потоке вашей программы, но поскольку вы вводите зависимость запроса в функцию хранилища, я предполагаю, что объект JSON является частью вашего запроса. В таком случае, вы можете попробовать,

$input   = $request->json()->all();

Просто print_r($input) и посмотрите, что вы получаете.

Если объект JSON не является частью вашего запроса, вы пропустили передачу $json в свою функцию. Но это всего лишь дикая догадка!

Является ответом!
Moppo

12.03.2016 01:14:47

Процесс декодирования правильный. Я думаю, что ваша проблема заключается в том, что у вас может быть искаженная строка JSON.

Замените одинарные кавычки вокруг имен свойств двойными кавычками:

[{"name": "XCB808tvXNpqXKqekA2HlkJ8H.jpg","size":5112},{"name": "s6kA6B0e5m1sdSAjPXqNwtiy4.jpg", "size": 13135}]
mohammad gitipasand

12.03.2016 02:00:24

вы можете использовать Response::json($value);

Lennin Marte

20.10.2020 12:59:50

Просто заскочил за той же проблемой, что и при попытке получить ответ в формате json (Laravel 8.8.0). Способ, которым я смог заставить его работать, состоял в использовании:

$jsonFormattedResult = json_decode ($response->content(), true);

Надеюсь, это кому-то поможет. ( '-')/

Помочь в развитии проекта:
Закрыть X