[PHP exception] ca marche pas

Fermé
blo06 Messages postés 13 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 8 avril 2008 - 3 mai 2007 à 21:53
protote Messages postés 10 Date d'inscription vendredi 26 avril 2013 Statut Membre Dernière intervention 26 avril 2013 - 26 avril 2013 à 22:39
Bonjour,

j'essaye de gérer les erreurs notamment de problèmes d'ouverture de fichiers distants avec php, avec des blocs try et catch, mais ça marche pas :(

Par dépit, j'ai collé les exemples repris du manuel php, et j'ai toujours le même pb : ça bloque à la première accolade { après le try...

Si qq'un a une idée, c'est volontiers.

Merci

Blo

code d'ex :

<?php
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 !';
?> 

8 réponses

Si le try/catch ne fonctionne pas c'est certainnement que vous êtes en php4 !
La gestion des exceptions n'a été introduite que depuis php5
2
Bonjour,

Les exceptions ne fonctionnent pas correctement en PHP 5.2 si E-ACCELERATOR est activé.

1) Veuilez essayer en le désactivant.

2) Vous pouvez utiliser xCache ou APC à la place de EACCELERATOR.


b
2
salut.

Ca fait pareil moi pour mon code, ça ne fonctionne pas chez free.

Je pense que c'est une problème de version php ou un manquede librairie,

Je suis entrain de faire une recherche.
1
gat_ Messages postés 5 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 18 juillet 2007
18 juil. 2007 à 13:19
Salut,

Le code fournit fonctionne parfaitement et affiche:

"Capture de l'exception : Toujours lancer cette erreur Bonjour le Monde !"

L'erreur est toujours declenche puisqu'elle est lance dans le bloc try.

Dans ce petit exemple, une exception est lancee que si la variable $a est a 0.

<?php
function hello()
{
$a = 0;

if( $a == 1 )
{
echo "a is true";
return true;
}
else
{
throw new Exception( "a is false" );
}
}

try
{
hello();
}
catch( Exception $e )
{
echo "caught exception: " . $e->getMessage();
}

?>


Gaetan Mathey
http://ww38.vmeste.fr/index.php?Seulement-lui_la-minute-geek&subid1=20200206-0403-50ca-b23a-796e1b647bba
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
J'ai le même problème,

est ce que quelqu'un a une solution ??
C'est bloquant quand on veut réutiliser des classes.
0
aisai di arenger
0
jadu29 Messages postés 44 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 17 juillet 2023 9
14 juin 2011 à 18:59
et depuis ???
ça a avancé ???

car j'ai aujourd'hui (14 juin 2011) ce pb chez free ! et en local !!! comme quoi ça n'a rien à voir avec free !!!
0
protote Messages postés 10 Date d'inscription vendredi 26 avril 2013 Statut Membre Dernière intervention 26 avril 2013 5
26 avril 2013 à 22:39
Voilà un tutoriel sur les exceptions en PHP :
http://www.finalclap.com/faq/325-php-exception-try-catch

Le mécanisme des exceptions n'existe que dans PHP 5, dans les versions antérieures (PHP4, PHP3) ça ne fonctionne pas. Tu peux vérifier ta version de php avec la fonction phpinfo().
0