1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-23 22:52:18 +01:00
Files
archived-doc-fr/appendices/reserved.xml

631 lines
16 KiB
XML
Executable File

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 170b6cda37f29c39b9e08375344c5eb9523b2de3 Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<appendix xml:id="reserved" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Mots réservés en PHP</title>
<para>
Cette annexe est une liste d'identifiants prédéfinis en PHP. Aucun
des identifiants utilisés ici ne doit être repris comme nom de
variable ou de fonction dans les scripts, sauf s'il est noté explicitement
le contraire. Ces identifiants incluent des mots-clés, des constantes,
des classes et des variables prédéfinies. Ces listes ne sont pas complètes
ni exhaustives.
</para>
<sect1 xml:id="reserved.keywords">
<title>Liste de mots-clés</title>
<simpara>
Ces mots ont un sens spécial pour PHP. Certains représentent des objets
ressemblant à des fonctions, d'autres à des constantes, et ainsi de
suite, mais ils n'en sont pas vraiment : ce sont des structures de langage.
Les mots clés suivants ne peuvent pas être utilisés comme nom de constante,
de classe ou de fonction.
Ils sont cependant autorisés comme nom de propriété, constante et de
méthode dans les classes, interfaces, traits sauf le mot clé
<literal>class</literal> qui ne doit pas être utilisé comme nom de
constante.
</simpara>
<table>
<title>Mots réservés en PHP</title>
<tgroup cols="5">
<tbody>
<row>
<entry>
<function>__halt_compiler</function>
</entry>
<entry>
<link linkend="language.oop5.abstract">abstract</link>
</entry>
<entry>
<link linkend="language.operators.logical">and</link>
</entry>
<entry>
<function>array</function>
</entry>
<entry>
<link linkend="control-structures.foreach">as</link>
</entry>
</row>
<row>
<entry>
<link linkend="control-structures.break">break</link>
</entry>
<entry>
<link linkend="language.types.callable">callable</link>
</entry>
<entry>
<link linkend="control-structures.switch">case</link>
</entry>
<entry>
<link linkend="language.exceptions">catch</link>
</entry>
<entry>
<link linkend="language.oop5.basic.class">class</link>
</entry>
</row>
<row>
<entry>
<link linkend="language.oop5.cloning">clone</link>
</entry>
<entry>
<link linkend="language.oop5.constants">const</link>
</entry>
<entry>
<link linkend="control-structures.continue">continue</link>
</entry>
<entry>
<link linkend="control-structures.declare">declare</link>
</entry>
<entry>
<link linkend="control-structures.switch">default</link>
</entry>
</row>
<row>
<entry>
<function>die</function>
</entry>
<entry>
<link linkend="control-structures.do.while">do</link>
</entry>
<entry>
<function>echo</function>
</entry>
<entry>
<link linkend="control-structures.else">else</link>
</entry>
<entry>
<link linkend="control-structures.elseif">elseif</link>
</entry>
</row>
<row>
<entry>
<function>empty</function>
</entry>
<entry>
<link linkend="control-structures.declare">enddeclare</link>
</entry>
<entry>
<link linkend="control-structures.alternative-syntax">endfor</link>
</entry>
<entry>
<link linkend="control-structures.alternative-syntax">endforeach</link>
</entry>
<entry>
<link linkend="control-structures.alternative-syntax">endif</link>
</entry>
</row>
<row>
<entry>
<link linkend="control-structures.alternative-syntax">endswitch</link>
</entry>
<entry>
<link linkend="control-structures.alternative-syntax">endwhile</link>
</entry>
<entry>
<function>eval</function>
</entry>
<entry>
<function>exit</function>
</entry>
<entry>
<link linkend="language.oop5.basic.extends">extends</link>
</entry>
</row>
<row>
<entry>
<link linkend="language.oop5.final">final</link>
</entry>
<entry>
<link linkend="language.exceptions">finally</link>
</entry>
<entry>
<link linkend="functions.arrow">fn</link> (à partir de PHP 7.4)
</entry>
<entry>
<link linkend="control-structures.for">for</link>
</entry>
<entry>
<link linkend="control-structures.foreach">foreach</link>
</entry>
</row>
<row>
<entry>
<link linkend="functions.user-defined">function</link>
</entry>
<entry>
<link linkend="language.variables.scope">global</link>
</entry>
<entry>
<link linkend="control-structures.goto">goto</link>
</entry>
<entry>
<link linkend="control-structures.if">if</link>
</entry>
<entry>
<link linkend="language.oop5.interfaces">implements</link>
</entry>
</row>
<row>
<entry>
<function>include</function>
</entry>
<entry>
<function>include_once</function>
</entry>
<entry>
<link linkend="language.operators.type">instanceof</link>
</entry>
<entry>
<link linkend="language.oop5.traits.conflict">insteadof</link>
</entry>
<entry>
<link linkend="language.oop5.interfaces">interface</link>
</entry>
</row>
<row>
<entry>
<function>isset</function>
</entry>
<entry>
<function>list</function>
</entry>
<entry>
&match; (à partir de PHP 8.0)
</entry>
<entry>
<link linkend="language.namespaces">namespace</link>
</entry>
<entry>
<link linkend="language.oop5.basic.new">new</link>
</entry>
</row>
<row>
<entry>
<link linkend="language.operators.logical">or</link>
</entry>
<entry>
<function>print</function>
</entry>
<entry>
<link linkend="language.oop5.visibility">private</link>
</entry>
<entry>
<link linkend="language.oop5.visibility">protected</link>
</entry>
<entry>
<link linkend="language.oop5.visibility">public</link>
</entry>
</row>
<row>
<entry>
<link linkend="language.oop5.properties.readonly-properties">readonly</link> (à partir de PHP 8.1.0) *
</entry>
<entry>
<function>require</function>
</entry>
<entry>
<function>require_once</function>
</entry>
<entry>
<function>return</function>
</entry>
<entry>
<link linkend="language.variables.scope">static</link>
</entry>
</row>
<row>
<entry>
<link linkend="control-structures.switch">switch</link>
</entry>
<entry>
<link linkend="language.exceptions">throw</link>
</entry>
<entry>
<link linkend="language.oop5.traits">trait</link>
</entry>
<entry>
<link linkend="language.exceptions">try</link>
</entry>
<entry>
<function>unset</function>
</entry>
</row>
<row>
<entry>
<link linkend="language.namespaces.importing">use</link>
</entry>
<entry>
<link linkend="language.oop5.properties">var</link>
</entry>
<entry>
<link linkend="control-structures.while">while</link>
</entry>
<entry>
<link linkend="language.operators.logical">xor</link>
</entry>
<entry>
<link linkend="language.generators">yield</link>
</entry>
</row>
<row>
<entry>
<link linkend="control-structures.yield.from">yield from</link>
</entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry></entry>
</row>
</tbody>
</tgroup>
</table>
<simpara>
* <literal>readonly</literal> peut être utilisé comme nom de fonction.
</simpara>
<table>
<title>Constantes utilisées lors de la compilation</title>
<tgroup cols="5">
<tbody>
<row>
<entry>
<link linkend="language.constants.magic">__CLASS__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__DIR__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__FILE__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__FUNCTION__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__LINE__</link>
</entry>
</row>
<row>
<entry>
<link linkend="language.constants.magic">__METHOD__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__PROPERTY__</link>
</entry>
<entry>
<link linkend="language.namespaces.nsconstants">__NAMESPACE__</link>
</entry>
<entry>
<link linkend="language.constants.magic">__TRAIT__</link>
</entry>
<entry>
</entry>
<entry>
</entry>
<entry>
</entry>
<entry>
</entry>
</row>
</tbody>
</tgroup>
</table>
</sect1>
<sect1 xml:id="reserved.classes">
<title>Classes prédéfinies</title>
<para>
Cette section liste les classes standards prédéfinies. Les autres extensions
qui définissent d'autres classes sont décrites dans leur référence.
</para>
<sect2 xml:id="reserved.classes.standard">
<title>Classes standards</title>
<simpara>
Ces classes sont définies dans le jeu de classes standards
de PHP, inclus dans toutes les versions de PHP.
</simpara>
<variablelist>
<varlistentry>
<term><classname>Directory</classname></term>
<listitem>
<simpara>
Créé par la fonction <function>dir</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>stdClass</classname></term>
<listitem>
<simpara>
Une classe vide générique créée par
<link linkend="language.types.object.casting">la conversion
en objet</link> ou le résultat de diverses fonctions standard.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>__PHP_Incomplete_Class</classname></term>
<listitem>
<simpara>
Peut être créé par la fonction
<function>unserialize</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>Exception</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>ErrorException</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>php_user_filter</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>Closure</classname></term>
<listitem>
<simpara>
La classe prédéfinie finale <classname>Closure</classname>
est utilisée pour représenter les
<link linkend="functions.anonymous">fonctions anonymes</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>Generator</classname></term>
<listitem>
<simpara>
La classe finale prédéfinie <classname>Generator</classname>
est utilisée pour représenter les
<link linkend="language.generators">générateurs</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>ArithmeticError</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>AssertionError</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>DivisionByZeroError</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>Error</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>Throwable</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>ParseError</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>TypeError</classname></term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</sect2>
<sect2 xml:id="reserved.classes.special">
<title>Classes spéciales</title>
<simpara>
Les identifiants suivants ne devraient pas être utilisés en tant que nom de classe
à cause de leur rôle particulier.
</simpara>
<variablelist>
<varlistentry>
<term><classname>self</classname></term>
<listitem>
<simpara>
<link linkend="language.oop5.paamayim-nekudotayim">Classe
courante</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>static</classname></term>
<listitem>
<simpara>
<link linkend="language.oop5.late-static-bindings">Classe courante
au moment de l'exécution</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><classname>parent</classname></term>
<listitem>
<simpara>
<link linkend="language.oop5.paamayim-nekudotayim">Classe
parent</link>.
</simpara>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>
&appendices.reserved.constants;
<sect1 xml:id="reserved.other-reserved-words">
<title>Autre liste de mots réservés</title>
<simpara>
Les mots suivants ne peuvent pas être utilisés comme nom de classe, d'interface ou de trait.
Antérieur à PHP 8.0, il était également interdit de les utiliser dans les espaces de noms.
</simpara>
<para>
<table>
<title>Mots réservés</title>
<tgroup cols="4">
<tbody>
<row>
<entry>
parent
</entry>
<entry>
self
</entry>
<entry>
int
</entry>
<entry>
float
</entry>
</row>
<row>
<entry>
bool
</entry>
<entry>
string
</entry>
<entry>
true
</entry>
<entry>
false
</entry>
</row>
<row>
<entry>
null
</entry>
<entry>
void (à partir de PHP 7.1)
</entry>
<entry>
iterable (à partir de PHP 7.1)
</entry>
<entry>
object (à partir de PHP 7.2)
</entry>
</row>
<row>
<entry>
mixed (à partir de PHP 8.0)
</entry>
<entry>
never (à partir de PHP 8.1)
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
La liste des mots suivants présente une particularité. Bien qu'ils puissent être
utilisés dans les noms de classe, d'interface, et de trait, il convient d'éviter
de les utiliser sachant qu'ils peuvent être utilisés dans les futures versions de PHP.
</para>
<para>
<table>
<title>Mots semi-réservés</title>
<tgroup cols="4">
<tbody>
<row>
<entry>
enum
</entry>
<entry>
resource
</entry>
<entry>
numeric
</entry>
<entry>
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</sect1>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->