Ошибка при попытке GuzzleHttp декодировать строку JSON в массив при установке php 7 - PullRequest
2 голосов
/ 26 апреля 2020

Я пытаюсь преобразовать строку json в массив с php.

Моя php версия 7.0

Я получаю эту ошибку:

PHP Неустранимая ошибка: необработанная ошибка: вызов неопределенной функции GuzzleHttp \ json_decode ()

Вот код с проблемой:

$adjunto1 = $value['archivo']; 
$adjunto2 = json_decode($adjunto1, TRUE); //this is teh line with the error

$ value ['archivo'] поступает из базы данных, и если я вижу внутри, я получаю:

string(155) "{"nombre":["ejemploxls"],"archivoContenido":["id.--ejemploxls--fecha-26-04-2020-10-08.xls"],"fecha":["26-04-2020-10-08"],"size":[5632],"extension":["xls"]}"

Когда я преобразовал массив в строку json с помощью json_encode (), массив выглядел так:

  array(5) {
    ["name"]=>
    string(11) "ejemplo.xls"
    ["type"]=>
    string(24) "application/vnd.ms-excel"
    ["tmp_name"]=>
    string(14) "/tmp/php7M0gVS"
    ["error"]=>
    int(0)
    ["size"]=>
    int(5632)
  }

Что это за ошибка? Что такое GuzzleHttp ?

1 Ответ

1 голос
/ 26 апреля 2020

Кажется, у вас есть какой-то неявный импорт из GuzzleHttp.

Guzzle является расширяемым PHP HTTP-клиентом.

Вот оболочка для json_decode php -функции из пространства имен GuzzleHttp, которая может вызвать вашу проблему.

В качестве быстрого решения просто добавьте sla sh перед вызовом функции:

$adjunto2 = \json_decode($adjunto1, TRUE);

Если вы хотите получить от меня гораздо более подробный ответ, пожалуйста, добавьте список ваших операторов использования с начала вашего php -файл. Также будет полезен список includes (если есть). Мне нужно больше контекста, чтобы быть более точным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...