Soucis sur les exceptions PHP 5 (pour le moteur de recherche)

Soucis sur les exceptions PHP 5 (pour le moteur de recherche)

par Valery Fremaux,
Nombre de réponses : 3

Après avoir fouillé ce que j'ai pu sur tous les sites php, je ne trouve toujours pas. Avec mon PHP 5.2.3, impossible de faire fonctionner les exceptions. Je tombe systématiquement sur un message

Uncaught Exception (Exception) blah blah ...

Même pour le code de test simplissime que voilà :

try {
    echo "test des exceptions in try";
    $error = 'Toujours lancer cette erreur';
    throw new Exception($error);

    // le code suivant une exception n'est pas exécuté.
    echo 'Jamais exécuté';
}
catch(Exception $e) {
    echo "Capture de l'exception : ",  $e->getMessage(), "\n";
}

// Continue l'exécution
echo 'Bonjour le Monde !';

Tout se passe comme si le catch était mal reconnu, ou mal traité.

Le hic, c'est que le moteur de recherche qui utilise une partie du framework Zend est bourré de try ... catch, et que le moteur de recherche ne sait donc pas bien se récupérer de situaitons anormales (il fait tout planter).

Quelqu'un à des billes là-dessus ?
 

Moyenne des évaluations  -
En réponse à Valery Fremaux

Re: Soucis sur les exceptions PHP 5 (pour le moteur de recherche)

par Frederic Clausset,
Même problème chez nous. Résolu en désactivant eAccelarator.

voir : http://www.eaccelerator.net/ticket/242
http://www.geekisp.com/faq/6_61_en.html


En réponse à Frederic Clausset

Re: Soucis sur les exceptions PHP 5 (pour le moteur de recherche)

par Valery Fremaux,

On peut être moins radical et activer quand même eAccelerator qui est assez efficace, mais il faut éliminer le sous-traitement "optimizer". C'est lui qui est l'origine du problème .

Dans les paramètres additionnels d'eAccelerator dans php.ini :

eaccelerator.shm_size="64" ; 20MB per heavy site ?
eaccelerator.cache_dir="D:\temp\php_eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="0"
...

Moyenne des évaluations Utile (1)