Solution de l'exercice :

Source : lesson_11_c2_error_reporting_function.php Résultat
<?php
ini_set
("display_errors"1);
echo 
"<p>error_reporting(E_ALL & ~E_USER_NOTICE))<br/>";
error_reporting(E_ALL & ~E_NOTICE);
error_levels();
function 
error_levels()
{
    echo 
"<p>Début du programme Notice <br/>";
    
$message_2 "c'est la rose";
    
$message $message_1.$message_2 ;
    echo 
$message ;
    
?>
    <?php
    
echo "<p>Debut du programme warning <br/>";
    
$myString "L'important, c'est la rose";
    
// Une erreur est générée car join attend un tableau en second argument
    
join(''$myString);
    echo 
"<br/>-- end --<br/>";
    echo 
"<p>Début du programme fatal<br/>";
    echo 
"<br/>-- begin --<br/>";
    
// Appel d'une fonction non existante
    // qui va générer une E_ERROR (fatale)
    
someFunction();
    
// La ligne suivante ne sera jamais executée
    
echo "<br/>-- end --<br/>";
    function 
somefonction()
    {
        echo 
"Ce message est à l'intérieur de la fonction";
    }
}
?>

error_reporting(E_ALL & ~E_USER_NOTICE))

Début du programme Notice
c'est la rose

Debut du programme warning

Warning: join(): Invalid arguments passed in /home/marchons/autres_sites/atelierphp_net/solutions/lesson_11_c2_error_reporting_function.php on line 17

-- end --

Début du programme fatal

-- begin --

Fatal error: Uncaught Error: Call to undefined function someFunction() in /home/marchons/autres_sites/atelierphp_net/solutions/lesson_11_c2_error_reporting_function.php:23 Stack trace: #0 /home/marchons/autres_sites/atelierphp_net/solutions/lesson_11_c2_error_reporting_function.php(5): error_levels() #1 /home/marchons/autres_sites/atelierphp_net/commons/show_solutions.php(146): require('/home/marchons/...') #2 {main} thrown in /home/marchons/autres_sites/atelierphp_net/solutions/lesson_11_c2_error_reporting_function.php on line 23