<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/migration70.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'migration70.other-changes.php',
    1 => 'Autres changements',
    2 => 'Autres changements',
  ),
  'up' => 
  array (
    0 => 'migration70.php',
    1 => 'Migration de PHP 5.6.x vers PHP 7.0.x',
  ),
  'prev' => 
  array (
    0 => 'migration70.removed-exts-sapis.php',
    1 => 'Extensions et SAPI supprim&eacute;es',
  ),
  'next' => 
  array (
    0 => 'migration56.php',
    1 => 'Migration de PHP 5.5.x vers PHP 5.6.x',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'appendices/migration70/other-changes.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="migration70.other-changes" class="sect1">
 <h2 class="title">Autres changements</h2>

 <div class="sect2" id="migration70.other-changes.loosening-reserved-words">
  <h3 class="title">Assouplissement des restrictions des mots réservés</h3>

  <p class="para">
   Globalement, l&#039;utilisation des mots réservés en tant que nom de propriété, 
   constante ou méthode dans des classes, des interfaces ou des traits est
   désormais autorisée. Ceci réduit la surface des ruptures de rétrocompatibilité
   quand de nouveaux mots-clés sont introduits et évite les restrictions de
   nommage sur les API.
  </p>

  <p class="para">
   Ceci est particulièrement utile lors de la création de DSLs internes avec
   des interfaces &quot;fluent&quot; :
  </p>
  <div class="informalexample">
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// 'new', 'private' et 'for' étaient inutilisables auparavant<br /></span><span style="color: #0000BB">Project</span><span style="color: #007700">::new(</span><span style="color: #DD0000">'Project Name'</span><span style="color: #007700">)-&gt;</span><span style="color: #0000BB">private</span><span style="color: #007700">()-&gt;</span><span style="color: #0000BB">for</span><span style="color: #007700">(</span><span style="color: #DD0000">'purpose here'</span><span style="color: #007700">)-&gt;</span><span style="color: #0000BB">with</span><span style="color: #007700">(</span><span style="color: #DD0000">'username here'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>

  <p class="para">
   La seule limitation est que le mot-clé <code class="literal">class</code> ne peut
   toujours pas être utilisé comme nom de constante, sinon il serait en
   conflit avec la syntaxe de résolution du nom de la classe
   (<code class="literal">ClassName::class</code>).
  </p>
 </div>

 <div class="sect2" id="migration70.other-changes.remove-date-timezone-warning">
  <h3 class="title">Enlèvement de l&#039;avertissement date.timezone</h3>

  <p class="para">
   Auparavant, un avertissement était émis si le paramètre INI 
   <code class="systemitem systemitem">date.timezone</code> 
   n&#039;avait pas été défini avant d&#039;utiliser les fonctions de date/temps.
   Maintenant, cet avertissement a été supprimé (avec 
   <code class="systemitem systemitem">date.timezone</code> qui continue
   d&#039;être UTC par défaut).
  </p>
 </div>
</div><?php manual_footer($setup); ?>