2013-02-18 3 views
0

С моей Backbone приложения, Laravel получает результаты от запроса POST, как это:Backbone и Laravel: Как преобразовать объект JSON

$input = Input::json(); 

Это возвращает JSON объект, а не строка. Я думал, что могу просто использовать json_decode, чтобы добраться до его свойств, но json_decode ожидает строку. Итак, как я могу преобразовать свой объект JSON во что-то, где PHP может работать со своими свойствами?

Я попытался получить Input::all() из приложения, но возвращает пустой массив.

Я пробовал искать Google и не мог найти ничего о том, как это сделать. Благодарю.

ответ

1

json_decode($string) должен принимать строку json в качестве параметра. По умолчанию он возвращает экземпляр StdClass (объект) со всеми пропозициями (если вы не установите второй параметр = true) при успешном завершении и null при сбое.

Также такие значения как null, false, true могут быть возвращены как они есть.

json_encode($anyData) может получать фактически любые данные и возвращать строку JSON.

0

Чтобы получить требуемые данные вы можете использовать Request::getContent(). С его помощью вы можете передать его json_decode(), как вам нравится.

+0

no, empty - NULL – Ulterior

+0

@Ulterior - Вы говорите, что 'Request :: getContent()' is empty, или результат 'json_decode()' является «пустым»? – kfriend

Смежные вопросы