<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/userlandnaming.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'userlandnaming.tips.php',
    1 => 'Astuces',
    2 => 'Astuces',
  ),
  'up' => 
  array (
    0 => 'userlandnaming.php',
    1 => 'Guide de nommage de l\'espace utilisateur',
  ),
  'prev' => 
  array (
    0 => 'userlandnaming.rules.php',
    1 => 'R&egrave;gles',
  ),
  'next' => 
  array (
    0 => 'about.php',
    1 => '&Agrave; propos du manuel',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'appendices/userlandnaming.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="userlandnaming.tips" class="section">
  <h2 class="title">Astuces</h2>
  <p class="simpara">
   Pour écrire du code pérenne, il est recommandé de ne pas placer de
   nombreuses variables, fonctions ou classes dans l&#039;espace de noms global.
   Cela empêchera les conflits de nommage avec le code tiers ainsi qu&#039;avec
   d&#039;éventuels ajouts futurs au langage.
  </p>
  <p class="para">
   Une façon courante de prévenir les conflits de noms de fonctions et de
   classes est de les ajouter à leur propre
   <a href="language.namespaces.php" class="link">espace de noms</a> dédié.
  </p>
  <div class="informalexample">
   <div class="example-contents">
<div class="phpcode"><pre><code style="color: #000000"><span style="color: #0000BB">&lt;?php

</span><span style="color: #007700">namespace </span><span style="color: #0000BB">MyProject</span><span style="color: #007700">;

function </span><span style="color: #0000BB">my_function</span><span style="color: #007700">()
{
    return </span><span style="color: #0000BB">true</span><span style="color: #007700">;
}

</span><span style="color: #0000BB">\MyProject\my_function</span><span style="color: #007700">();

</span><span style="color: #0000BB">?&gt;</span></code></pre></div>
   </div>

  </div>
  <p class="simpara">
   Il reste nécessaire de garder une trace des espaces de noms déjà utilisés,
   mais une fois un espace de noms choisi, toutes les fonctions et les classes
   peuvent y être ajoutées sans avoir à se soucier de nouveau des conflits.
  </p>
  <p class="simpara">
   Il est considéré comme une bonne pratique de limiter le nombre de variables
   ajoutées à la portée globale afin d&#039;éviter les conflits de nommage avec le
   code tiers.
  </p>
  <blockquote class="note"><p><strong class="note">Note</strong>: 
   <strong>Portée des variables</strong><br />
   <p class="para">
    En raison des <a href="language.variables.scope.php" class="link">règles de portée</a>
    de PHP, les variables définies à l&#039;intérieur des fonctions et des méthodes
    ne sont pas dans la portée globale et, en tant que telles, ne peuvent pas
    entrer en conflit avec d&#039;autres variables définies dans la portée globale.
   </p>
  </p></blockquote>
 </div><?php manual_footer($setup); ?>