PrestashopUser03 Posted January 24, 2022 Share Posted January 24, 2022 Bonjour à tous, J'ai ajouté la librairie stripe à mon module via composer, et impossible de la charger dans un de mes front controllers alors que je peux la charger dans un autre, je reçois une erreur namespace suivante Attempted to load class "StripeClient" from namespace "Stripe". Did you forget a "use" statement for another namespace? Voici mon code (qui fonctionne sur un controller et pas sur un autre) : $stripe = new \Stripe\StripeClient( 'ma_clé' ); $stripe->invoices->retrieve( 'mon_invoice', ); Quelqu'un aurait une idée? Link to comment Share on other sites More sharing options...
Mediacom87 Posted January 24, 2022 Share Posted January 24, 2022 Bonjour, quels sont les use en entête de controller ? Link to comment Share on other sites More sharing options...
PrestashopUser03 Posted January 24, 2022 Author Share Posted January 24, 2022 Il n'y en a pas sur les deux controllers mais ça fonctionne quand même sur un des deux. Link to comment Share on other sites More sharing options...
Mediacom87 Posted January 24, 2022 Share Posted January 24, 2022 il y a 14 minutes, PrestashopUser03 a dit : Il n'y en a pas sur les deux controllers mais ça fonctionne quand même sur un des deux. Donc ils ne doivent pas être dans le même contexte et appelé de la même façon, dans tous les cas peut être suffit il de rajouter le namespace pour profiter des fonctions. Link to comment Share on other sites More sharing options...
PrestashopUser03 Posted January 24, 2022 Author Share Posted January 24, 2022 (edited) J'ai ajouté le namespace avant la déclaration du controller : use Stripe\stripe; class ... et je reçois toujours cette erreur : Attempted to load class "Stripe" from namespace "Stripe". Did you forget a "use" statement for another namespace? Pourtant voici ce que dit le composer.json de la librairie stripe : "autoload": { "psr-4": { "Stripe\\": "lib/" } }, et sa structure : vendor stripe-php data lib Edited January 24, 2022 by PrestashopUser03 (see edit history) Link to comment Share on other sites More sharing options...
fbenoist.com Posted January 28, 2022 Share Posted January 28, 2022 Il faut ajouter le chargement de l'autoload au début du contrôler front. include_once dirname(__FILE__).'/../../vendor/autoload.php'; Link to comment Share on other sites More sharing options...
Alex. Debusschère Posted February 2, 2022 Share Posted February 2, 2022 Il est possible que la classe ne soit pas dans l'autoloader composer. Il ne devrait pas être nécessaire de faire un include. Essaye la commande: composer dump-autoload puis refais un essai. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now