11<?xml version =" 1.0" encoding =" utf-8" ?>
2- <!-- EN-Revision: c81a48e58fc530a74827316027fae74668d17a1d Maintainer: yannick Status: ready -->
2+ <!-- EN-Revision: 6e885e52412ad979aa5fbb620bb84e886fc0ebe8 Maintainer: lacatoire Status: ready -->
33<!-- Reviewed: no -->
44
5- <chapter xml : id =" language.exceptions" xmlns =" http://docbook.org/ns/docbook" >
5+ <chapter xml : id =" language.exceptions" xmlns =" http://docbook.org/ns/docbook" annotations = " interactive " >
66 <title >Les exceptions</title >
7+ <note >
8+ <simpara >Voir aussi la classe <exceptionname >Exception</exceptionname ></simpara >
9+ </note >
710 <para >
811 PHP a une gestion des exceptions similaire à ce qu'offrent les autres
912 langages de programmation.
124127 </para >
125128 <example >
126129 <title >Convertir l'error reporting en exceptions</title >
127- <programlisting role =" php" >
130+ <programlisting role =" php" annotations = " non-interactive " >
128131<![CDATA[
129132<?php
130133function exceptions_error_handler($severity, $message, $filename, $lineno) {
131134 throw new ErrorException($message, 0, $severity, $filename, $lineno);
132135}
133136
134137set_error_handler('exceptions_error_handler');
135- ?>
136138]]>
137139 </programlisting >
138140 </example >
@@ -169,7 +171,6 @@ try {
169171
170172// On continue l'exécution
171173echo "Bonjour le monde !\n";
172- ?>
173174]]>
174175 </programlisting >
175176 &example.outputs;
@@ -211,7 +212,6 @@ try {
211212
212213// On continue l'exécution
213214echo "Bonjour le monde !\n";
214- ?>
215215]]>
216216 </programlisting >
217217 &example.outputs;
@@ -242,7 +242,6 @@ function test() {
242242}
243243
244244echo test();
245- ?>
246245]]>
247246 </programlisting >
248247 &example.outputs;
@@ -277,8 +276,6 @@ class Test {
277276
278277$foo = new Test;
279278$foo->testing();
280-
281- ?>
282279]]>
283280 </programlisting >
284281 &example.outputs;
@@ -310,8 +307,6 @@ class Test {
310307
311308$foo = new Test;
312309$foo->testing();
313-
314- ?>
315310]]>
316311 </programlisting >
317312 &example.outputs;
@@ -339,7 +334,6 @@ try {
339334} catch (SpecificException) {
340335 print "Une SpecificException a été levée, mais les détails ne nous intéressent pas.";
341336}
342- ?>
343337]]>
344338 </programlisting >
345339 &example.outputs;
@@ -369,7 +363,6 @@ try {
369363} catch (Exception $e) {
370364 print $e->getMessage();
371365}
372- ?>
373366]]>
374367 </programlisting >
375368 &example.outputs;
@@ -417,13 +410,13 @@ string(6) "Fourth"
417410 <title >Étendre les Exceptions</title >
418411 <para >
419412 Une classe d'exception définie par l'utilisateur peut être définie en étendant
420- la classe Exception intégrée. Les membres et les propriétés ci-dessous montrent
413+ la classe < exceptionname > Exception</ exceptionname > intégrée. Les membres et les propriétés ci-dessous montrent
421414 ce qui est accessible dans la classe enfant qui dérive de la classe Exception
422415 intégrée.
423416 </para >
424417 <example >
425418 <title >La classe d'exception intégrée</title >
426- <programlisting role =" php" >
419+ <programlisting role =" php" annotations = " non-interactive " >
427420<![CDATA[
428421<?php
429422class Exception implements Throwable
@@ -451,12 +444,11 @@ class Exception implements Throwable
451444 // Peut être redéfinie
452445 public function __toString(); // chaîne formatée pour l'affichage
453446}
454- ?>
455447]]>
456448 </programlisting >
457449 </example >
458450 <para >
459- Si une classe étend la classe Exception intégrée et redéfinit le <link
451+ Si une classe étend la classe < exceptionname > Exception</ exceptionname > intégrée et redéfinit le <link
460452 linkend =" language.oop5.decon" >constructeur</link >, il est fortement recommandé
461453 qu'elle appelle également <link
462454 linkend =" language.oop5.paamayim-nekudotayim" >parent::__construct()</link >
@@ -534,7 +526,7 @@ class TestException
534526}
535527
536528
537- // Exemple 1
529+ echo "# Exemple 1\n";
538530try {
539531 $o = new TestException(TestException::THROW_CUSTOM);
540532} catch (MyException $e) { // Sera capturée
@@ -546,10 +538,9 @@ try {
546538
547539// Poursuite de l'exécution
548540var_dump($o); // Null
549- echo "\n\n";
550541
551542
552- // Exemple 2
543+ echo "\n\n# Exemple 2\n";
553544try {
554545 $o = new TestException(TestException::THROW_DEFAULT);
555546} catch (MyException $e) { // Ne correspond pas à ce type
@@ -561,10 +552,9 @@ try {
561552
562553// Poursuite de l'exécution
563554var_dump($o); // Null
564- echo "\n\n";
565555
566556
567- // Exemple 3
557+ echo "\n\n# Exemple 3\n";
568558try {
569559 $o = new TestException(TestException::THROW_CUSTOM);
570560} catch (Exception $e) { // Sera capturée
@@ -573,10 +563,9 @@ try {
573563
574564// Poursuite de l'exécution
575565var_dump($o); // Null
576- echo "\n\n";
577566
578567
579- // Exemple 4
568+ echo "\n\n# Exemple 4\n";
580569try {
581570 $o = new TestException();
582571} catch (Exception $e) { // Sauté, aucune exception
@@ -585,8 +574,6 @@ try {
585574
586575// Poursuite de l'exécution
587576var_dump($o); // TestException
588- echo "\n\n";
589- ?>
590577]]>
591578 </programlisting >
592579 </example >
0 commit comments