Y compris les fichiers avec symfony2
Je suis en train de faire un bundle symfony2 avec google drive api. J'ai une classe dans le dossier Utils: Authentification qui interagissent avec les fichiers de google (que j'ai mis dans ce même dossier) et je veux inclure ces fichiers dans mon Authentication.php.
- Je inclure comme ceci:
require_once 'google-api-php-client/src/Google_Client.php';
require_once 'google-api-php-client/src/contrib/Google_DriveService.php';
require_once 'google-api-php-client/src/contrib/Google_Oauth2Service.php';
Mais j'obtiens cette erreur:
Erreur fatale:
main()
: Failed opening required 'google-api-php-client\src\Google_Client.php'
avez-vous plus de ideias pour ce problème?
OriginalL'auteur patricia | 2012-11-19
Vous devez vous connecter pour publier un commentaire.
Lorsque vous créez un paquet, vous devez travailler avec le cadre des fonctions et de l'utilisation intégrée de l'autochargeur.
Ne pas lutter contre le cadre
Dans votre cas, je préfère un Service dossier dans votre Bundle. Ensuite, vous pouvez mettre votre google classes dans ce dossier et de construire une classe Proxy qui est dans le bon espace de noms et le résumé de votre code google.
Dans la classe de Service, vous pouvez importer vos lib par besoin ou vous pouvez charger vos sources sur le compositeur. Nous utilisons ici le moyen le plus facile.
Alors vous pouvez l'utiliser dans votre Bundle lorsque vous importer l'espace de noms:
Avec cette méthode, vous pouvez abstraite, l'API Google à partir de votre Faisceau de Code et vous pouvez travailler avec une meilleure structure. Son possible que vous obtenez des problèmes avec les espaces de noms. Mais vous pouvez le tester.
Sinon, vous pouvez regarder sur d'autres bottes sur Github comment ils mettent en œuvre les bibliothèques externes.
Ici est une autre façon:
http://www.kiwwito.com/article/add-third-party-libraries-to-symfony-2
Ajouter les bibliothèques externes pour projet Symfony2
De sorte que vous pouvez mettre en œuvre la complète lib et de charger la bibliothèque dans la symfony2 autochargeur
Donc vous voyez il y a quelques possibilités de mise en place d'une Bibliothèque externe.
Essayez de définir votre chemin avec
__DIR__
oudirname(__FILE__)
Dois-je mettre dirname(FICHIER) dans tous les exige de l'api google fichiers?
Je crois alors votre Chemin n'est pas correct. vous devez penser lorsque vous appelez la classe vous avez besoin d'un "\" devant la classe pour l'espace de noms racine.
pas de problème 🙂 quand vous ne pensez pas les espaces de noms que vous avez de tels problèmes 😀
OriginalL'auteur René Höhle