Автозагрузка php классов не найдена - PullRequest
1 голос
/ 14 июля 2020

Я автоматически загружаю классы в свой php файл, и автоматически загружаемый файл может найти и потребовать файл без проблем. Однако, когда я затем go использую этот класс в своем коде, я получаю сообщение об ошибке «Класс не найден». Я не понимаю, почему это происходит, поскольку файл класса можно без проблем найти и потребовать в автозагрузчике. Любая помощь приветствуется

require "../square-php-sdk-master/autoload.php";

$body = new \SquareConnect\Models\CreatePaymentRequest()

Ошибка:

Fatal error: Uncaught Error: Class 'SquareConnect\Models\CreatePaymentRequest' not found in C:\wamp64\www\testSite.test\include\order-cart.inc.php

Ответы [ 2 ]

0 голосов
/ 16 июля 2020

Проверить пространство имен файлов, загружаемых автоматически. Очевидно, что автозагрузчик может их найти, но они загружены в пространство имен, отличное от SquareConnect \ Models ...
Вы найдете пространство имен в верхней части загруженного файла, убедитесь, что оно написано:

namespace SquareConnect\Models

Во многих API Square они используют пространство имен \ Square, а не \ SquareConnect, так что это тоже нужно проверить

0 голосов
/ 14 июля 2020

Возможно, вы используете короткий тег php (

...