2010-03-19 6 views
1

J'utilise un schéma de méthode de gregor (Create cronjob with Zend Framework) pour créer une exécution en ligne de commande pour des parties de mon application telles que des tâches cron, des tâches d'administration, etc. Cela fonctionne, cependant, aucune erreur n'est signalée lorsque je crée un nouvel objet qui n'a pas été défini (faute d'orthographe) et d'autres erreurs de ce type.Ligne de commande Zend Framework voir les erreurs

J'aurais pensé que php signalerait une erreur, mais elle échoue silencieusement. Quelle est la raison pour ça? Y a-t-il un meilleur moyen d'atteindre mon objectif? Ou comment puis-je l'implémenter pour que je puisse voir les erreurs?

Merci beaucoup!

Voici le code:

en public/index.php

if(!defined('RUN_APP') || RUN_APP == true) 
{ 
    $application->bootstrap()->run(); 
} 

application/cron.php

define("RUN_APP",false); 
require(realpath('/var/www/domain/public/index.php')); 
$application->bootstrap(); 

//the rest 

Répondre

0

I figured it out. Je répondrai au cas où quelqu'un d'autre regarde. Je ne sais pas pourquoi il en est ainsi, mais, en mettant:

ini_set('display_errors', 'on'); 

en haut de votre fichier « cron.php » fait l'affaire. Je suppose que vous pourriez jeter un:

error_reporting(E_ALL|E_STRICT); 

par mesure de succès. Le plus curieux est que j'obtiens ces erreurs quand je n'utilise pas la ligne de commande et que je n'ai pas les lignes ci-dessus dans mon index.php ou bootstrap.php. Donc ils sont placés ailleurs dans le framework zend. Peut-être que "phpSettings.display_errors = 1" dans bootstrap a quelque chose à voir avec ça.

+0

J'ai le même problème. Les erreurs sont affichées dans le programme de ligne de commande principal, mais pas si elles ne parviennent pas à instancier un objet modèle Zend. Votre solution suggérée ne fonctionne pas pour moi. Merci quand même. – dlink

Questions connexes