0

Zend Quick StartZend: Comment éviter la double bibliothèque dans includePath?

public/index.php

set_include_path(implode(PATH_SEPARATOR, array(
    dirname(dirname(__FILE__)) . '/library', 
    get_include_path(), 
))); 

configs/application.ini

includePaths.library = APPLICATION_PATH "/../library" 

En conséquence

print get_include_path(); 
// prints %localpath%/application/../library:%localpath%/library 

si drop "includePaths.library" de ini , ./zf (Zend_Tool) échoue. Si drop dans index.php, l'amorçage échoue.

Comment empêcher correctement cette copie?

+0

Où mettez-vous 'print get_include_path()' pour tester cela? Avez-vous le chemin d'inclusion défini ailleurs (peut-être php.ini?) –

+0

IndexController :: indexAction(), par exemple. Aucune autre manipulation de chemin d'inclusion possible – Dmitry

+0

Je comprends que je peux simplifier includePath dans bootstrap via set_include_path sans sauvegarder les anciens composants includepath, mais pourquoi les options "includePaths" sont-elles dans ini si elles ne peuvent pas être utilisées correctement – Dmitry

Répondre

0

Je pense que vous avez raison de dire que le chemin d'inclusion ne devrait pas être dans application.ini aussi, donc je supprimerais cela. Ensuite, pour faire travailler, je pense que vous avez deux options Zend outil:

  1. changer votre configuration pour être comme la réponse haut dans cette question: Zend tool include path (qui aidera ZF trouver le chemin d'inclusion). La découverte automatique de ZF a été changée quelque part le long du chemin si je ne suis pas sûr si cette approche fonctionnera toujours.

  2. Vous pouvez également définir une variable d'environnement pour donner à l'outil Zend l'emplacement de la bibliothèque, détails ici: http://framework.zend.com/manual/1.12/en/zend.tool.framework.clitool.html (voir la section intitulée «Autres paramètres d'installation»).

Personnellement, je sauterais juste Zend Tool - Je ne pense pas que cela rende vraiment les choses plus faciles.

Questions connexes