2016-01-11 3 views
1

Я пытаюсь обновить жрать 6 и в журнале изменений у вас есть это:жрать 6 автозагрузку functions.php

Static functions in GuzzleHttp\Utils have been moved to namespaced functions under the GuzzleHttp namespace. This requires either a Composer based autoloader or you to include functions.php.

Теперь я пробовал различные способы самозарядные функции, но я получаю различные ошибки , Что такое правильный способ самозарядные функции на composer.json

я добавил это к моему composer.json:

"autoload": { 
    "files": ["vendor/guzzlehttp/guzzle/src/functions.php"] 
} 

Тогда после этого я получаю сообщение об ошибке:

PHP Fatal error: Cannot redeclare GuzzleHttp\uri_template() (previously declared in /home/fabio/flubit/dm/vendor/guzzlehttp/guzzle/src/functions.php:18) in /home/fabio/flubit/dm/vendor/guzzlehttp/guzzle/src/functions.php on line 32

Так очевидно, я пытаюсь загрузить что-то, что уже загружено.

Так что я удалил автозагрузку от композитора, а затем попытаться использовать json_decode() встроенную функцию на жрать делать это \GuzzleHttp\json_decode() я получаю это:

PHP Fatal error: Call to undefined function GuzzleHttp\json_decode()

+1

Вы используете автозагрузчик Composer? – ceejayoz

+0

@ceejayoz да посмотрите мой обновленный вопрос –

+0

Я бы а) удаляю раздел «автозагрузка», который вы добавили в 'composer.json' (Guzzle уже загружается автоматически, вы, вероятно, дважды загружаете его), и если это не так, t исправить его b) удалить весь каталог 'vendor /' и выполнить новую '' установку композитора''. Кроме того, у Guzzle нет функции 'json_decode' - PHP делает. '\ GuzzleHttp \ json_decode()' никогда не будет работать. – ceejayoz

ответ

0

жрать действительно обеспечивает «JSON» Request Option, которые могут упростить создание отправки json-кодированных запросов. Он будет автоматически кодироваться с помощью функции PHP json_encode(), а затем установить соответствующий заголовок типа контента.

+0

Спасибо Shaun, но это не то, что я искал, я искал [эту функцию] (https://github.com/guzzle/guzzle/blob/5.3/src/Utils.php#L132), который был удален на v6 –

+0

Эта функция представляет собой просто оболочку вокруг 'json_decode()' PHP. '$ json = \ json_decode ($ response-> getBody() -> __ toString())' –

+0

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

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