2012-02-03 3 views
2

Je veux utiliser le mécanisme Log de Zend Framwork comme un composant séparé, ce qui signifie que tout ce que je veux de ZF est juste le journal, Comment puis-je faire cela?Comment utiliser Zend Log en tant que composant séparé?

+0

Tout ce que je veux dire, c'est comment initialiser la fonction Zend Log – castiel

+0

La page de manuel [Zend_Log_Writer] (http://framework.zend.com/manual/1.11/fr/zend.log.writers.html) semble assez simple. Demandez-vous quelque chose de plus que cela? –

Répondre

6

Selon ces deux pages

Zend_Log nécessite Zend_Exception et suivants

  • DOM
  • libxml
  • Réflexion

Ce que cela signifie est que vous avez vraiment besoin des éléments suivants du cadre lui-même

library/Zend/Exception.php 
library/Zend/Log.php 
library/Zend/Log <- the directory 

Vous devriez alors être en mesure d'utiliser l'enregistreur en tant que composant autonome. Il suffit d'ajouter le dossier library dans la liste ci-dessus à votre chemin d'inclusion (composants Zend Framework comptent sur cette)

set_include_path(implode(PATH_SEPARATOR, array(
    '/path/to/library', 
    get_include_path() 
))); 

require_once 'Zend/Log/Writer/Stream.php'; 
require_once 'Zend/Log.php'; 

$writer = new Zend_Log_Writer_Stream('/path/to/logfile'); 
$log = new Zend_Log($writer); 
$log->log('Some message', 1); 
+0

oui, merci l'homme – castiel

1

Chaque fois que je veux utiliser des composants individuels du Zend Framework, je vous suffit d'inclure un petit fichier appelé zend_setup.php qui contient les éléments suivants trois lignes de code:

set_include_path('/Users/me/workspace/proj_name/library' . PATH_SEPARATOR . get_include_path()); 
require_once('/Users/me/workspace/proj_name/library/Zend/Loader/Autoloader.php'); 
Zend_Loader_Autoloader::getInstance(); 

Ceci est probablement pas aussi efficace que l'émission require_once() explicites déclarations, mais j'aime la commodité qu'il offre. Par exemple, vous pouvez très rapidement décider que vous souhaitez également utiliser Zend_Log_Writer_Firebug() et Zend_Log_Writer_Mail(). L'utilisation de l'autochargeur évite d'avoir à écrire toutes ces instructions require_once() supplémentaires.

+0

merci tout de même, mon pote – castiel

+0

Bon conseil. Parfait. – ylluminate

Questions connexes