<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.errors.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'language.errors.basics.php',
    1 => 'Bases',
    2 => 'Bases',
  ),
  'up' => 
  array (
    0 => 'language.errors.php',
    1 => 'Erreurs',
  ),
  'prev' => 
  array (
    0 => 'language.errors.php',
    1 => 'Erreurs',
  ),
  'next' => 
  array (
    0 => 'language.errors.php7.php',
    1 => 'Les Erreurs en PHP 7',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'language/errors/basics.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="language.errors.basics" class="sect1">
 <h2 class="title">Bases</h2>

 <p class="para">
  PHP signale des erreurs en réponse à un certain nombre de conditions d&#039;erreurs internes.
  Celles-ci peuvent être utilisées pour indiquer une multitude de problèmes différents,
  et peuvent être affichées et/ou enregistrées dans l&#039;historique selon les besoins.
 </p>

 <p class="para">
  Chaque erreur que PHP génère comprend un type. Une 
  <a href="errorfunc.constants.php" class="link">liste de ces types d&#039;erreur</a> est disponible,
  ainsi qu&#039;une brève description de leur comportement et leur cause possible.
 </p>

 <div class="sect2" id="language.errors.basics.handling">
  <h3 class="title">Gestion des erreurs en PHP</h3>

  <p class="para">
   Si aucun gestionnaire d&#039;erreur n&#039;est défini, PHP gèrera les erreurs qui se
   produisent selon sa configuration. Quelles erreurs seront signalées et lesquelles
   seront ignorées est contrôlé par la directive php.ini
   <a href="errorfunc.configuration.php#ini.error-reporting" class="link"><code class="parameter">error_reporting</code></a>
   ou lors de l&#039;exécution du script en appelant <span class="function"><a href="function.error-reporting.php" class="function">error_reporting()</a></span>. Il est toutefois fortement recommandé de 
   configurer la directive, car certaines erreurs peuvent se produire avant
   que l&#039;exécution du script débute.
  </p>

  <p class="para">
   Dans un environnement de développement, la directive 
   <a href="errorfunc.configuration.php#ini.error-reporting" class="link"><code class="parameter">error_reporting</code></a> 
   devrait toujours être configurée avec <strong><code><a href="errorfunc.constants.php#constant.e-all">E_ALL</a></code></strong>, afin d&#039;être
   informé et de corriger les problèmes relevés par PHP. En production il est possible de
   configurer la directive avec un niveau moins verbeux tel que 
   <code class="code">E_ALL &amp; ~E_NOTICE &amp; ~E_DEPRECATED</code>,
   mais généralement <strong><code><a href="errorfunc.constants.php#constant.e-all">E_ALL</a></code></strong> reste approprié car il peut fournir
   des avertissements en avance à des problèmes potentiels.
  </p>

  <p class="para">
   Comment PHP traite ces erreurs dépend de deux directives php.ini supplémentaires.
   <a href="errorfunc.configuration.php#ini.display-errors" class="link"><code class="parameter">display_errors</code></a>
   détermine si le message d&#039;erreur est affiché dans la sortie du script.
   Ceci devrait toujours être désactivé dans un environnement de production, car
   le message d&#039;erreur peut contenir des informations confidentielles, telles que les
   mots de passe de base de données. Cependant il est souvent utile d&#039;activer cette
   directive lors du développement, car ceci assure un signalement immédiat des problèmes.
  </p>

  <p class="para">
   En plus d&#039;afficher les erreurs, PHP peut enregistrer les erreurs quand la 
   directive <a href="errorfunc.configuration.php#ini.log-errors" class="link"><code class="parameter">log_errors</code></a> 
   est activée. Toutes les erreurs seront alors enregistrées dans le fichier ou 
   syslog défini par
   <a href="errorfunc.configuration.php#ini.error-log" class="link"><code class="parameter">error_log</code></a>.
   Ceci est extrêmement utile dans un environnement de production, car les erreurs qui
   se produisent seront enregistrées, et des rapports pourront être générés en
   s&#039;appuyant sur ces erreurs.
  </p>
 </div>

 <div class="sect2" id="language.errors.basics.user">
  <h3 class="title">Gestionnaire d&#039;erreurs d&#039;utilisateur</h3>

  <p class="para">
   Si le gestionnaire d&#039;erreur par défaut de PHP ne convient pas, beaucoup de types 
   d&#039;erreurs peuvent être gérés par un gestionnaire d&#039;erreur personnalisé qui peut
   être défini avec <span class="function"><a href="function.set-error-handler.php" class="function">set_error_handler()</a></span>.
   Bien que certains types d&#039;erreurs ne puissent pas être gérés de cette manière, 
   ceux qui le peuvent seront gérés de la manière que le script utilisateur juge
   appropriée : par exemple, ceci peut être utilisé pour afficher une page d&#039;erreur
   personnalisée à l&#039;utilisateur et signaler l&#039;erreur de façon plus directe qu&#039;en
   l&#039;enregistrant dans un fichier, comme en envoyant un courriel électronique.
  </p>
 </div>
</div><?php manual_footer($setup); ?>