Comment indiquer le zend framework, où mes classes personnalisées sont
J'ai un dossier avec des classes personnalisées dans une ZF 1.10 demande. Le dossier se trouve dans /bibliothèque. Comment puis-je savoir ZF où ils sont? Les deux applications.ini et index.php définir le chemin d'accès à la bibliothèque, mais alors ZF ne pouvez pas trouver les fichiers.
Merci
Vous devez vous connecter pour publier un commentaire.
Il y a de nombreuses solutions possibles. La plupart des communes, lors de l'utilisation de Zend Application, est de s'inscrire à l'espace de noms dans
application.ini
en ajoutant:D'autres solutions:
include_path
à l'aide deset_include_path()
(solution ad hoc)Configurer autochargeur dans
Bootstrap.php
:Finalement, configurer le module ou ressources de l'autochargeur, par exemple.
Zend (1.12)
J'ai un RépertoireExample
et une classeExample_Test
directement sousExample
. Je me suis inscrit à un espace de nomsExample
et puis, quand je accéder à la classeExample_Test
dans monphp
code je peux le faire sans aucun problème. Mais quand je regarde la méthodegetClassPath()
à l'intérieur deZend_Loader_Autoloader_Resource
il ne retourne pas un chemin d'accès valide(coz de certaines conditions), ce qui signifie que le fichier n'est pas chargé par la méthodeautoload()
. Alors comment est-il en fait de se charger?Souvent, nous rencontrons un problème d'écriture de nos propres fonctions ou de classes et où les placer.
Afin d'ajouter classe personnalisée (ou de la coutume de la bibliothèque), on peut utiliser zend framework autochargeur espaces de noms.
Ajouter la ligne ci-dessous dans l'application.fichier ini
OU
Toutes les classes personnalisées seront conservées sous répertoire de la bibliothèque. Créer un nom de dossier "Custom" (qui est défini dans l'application.ini) dans le répertoire de la bibliothèque.
Classes seront préfixés par 'Custom_' lors de la déclaration dans le fichier (par exemple Custom_Test)
Maintenant, nous pouvons utiliser cette classe comme
$test = new Custom_Test()
, dans notre application.Découvrez cette ancienne Zend Framework tutoriel de Rob Allen, plus précisément à la page 4, où il parle du programme d'amorçage. Son plus récent tutoriels, aussi excellents qu'ils soient, semblent reposer sur Zend Outil permettant de faire de la création de l'application et de la brillance au cours de cette.
Une chose qui m'alarmer, cependant, est que vous avez mentionné que le dossier que vous essayez de comprendre public/bibliothèque. Sauf si vous volontairement souhaitez partager votre code avec le monde, je vous suggère fortement de le placer ailleurs...sauf si vous avez un autre "public" dossier pas partagé avec le public (dans ce cas, vous pourriez envisager de le renommer pour éviter toute confusion).
Ajouter votre bibliothèque personnalisée de compositeur.json:
et exécuter compositeur de mise à jour