2017-02-20 22 views
-1

У меня Json массив возвращается из APIPHP JSON декодирования BOOL (истина)

$json_array = curl_exec($curl); 
var_dump($json_array); 
echo '<br>'.mb_detect_encoding($json_array);` 

{"code":"TEXT","name":"/generic/PRODUCT","desc":"/generic/PRODUCT_DESC","productCategory":"/market/prodcats/"}bool(true) 

ASCII

echo '<pre>'; print_r(json_decode($json_array)); 

Возвращает тот же массив не декодируются. Любые предложения, что может быть?

json_last_error();

Вызов неопределенной функции json_last_error() в /var/www/index.php по линии 59

+0

Вам необходимо передать необязательный параметр 'TRUE' в' json_decode() 'для возврата массива. – Kisaragi

+0

Возможно, вы захотите установить для параметра 'CURLOPT_RETURNTRANSFER' значение true для захвата ответа в переменную вместо того, чтобы печатать ее на экране. –

+1

Jeff Puckett II спасибо, что это сработало :) – ekavet

ответ

0

По функции json_decode по умолчанию возвращает StdClass, если вы хотите массив, вы должны послать второй параметр равен True, ,

$json_array = curl_exec($curl); 
var_dump($json_array); 
echo '<pre>'; print_r(json_decode($json_array,TRUE)); 
+0

нет 4EACH, это не тот случай, Джефф Пакетт уже объяснил, в чем проблема. Ответ не был установлен на переменную, поэтому я не смог преобразовать его в массив PHP или объект stdClass. – ekavet

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

  • Нет связанных вопросов^_^