mirror of
https://github.com/php/doc-fr.git
synced 2026-04-24 15:28:25 +02:00
2d314f78aa
* CI: add French style checker based on TRADUCTIONS.txt
Checks changed XML files in PRs for:
- Direct address forms (vous/votre/vos) → warnings
- French grammar errors (etc..., comme par exemple, si il) → errors
- Incorrect terminology (librairie, chiffrage, encryption) → warnings
Inspired by doc-ja's textlint+prh approach but simpler:
runs directly on XML sources, no PhD render needed.
Only errors (grammar/spelling) fail the CI.
Style warnings appear as PR annotations without blocking.
* test: introduce style errors to validate CI check
* Revert "test: introduce style errors to validate CI check"
This reverts commit 7c1d523c6bbef116f54fc6dad7b61a45ee4f7ddd.
* Corriger toutes les violations de style TRADUCTIONS.txt
- 174x "Notez que" → "Il est à noter que"
- 50x "depuis PHP X" → "à partir de PHP X"
- 50x "votre" → le/la/du
- 15x "si il" → "s'il"
- 14x "Vous pouvez" → "Il est possible de"
- 14x "encryption" (faux positifs entity refs exclus)
- 12x "assurez-vous" → "il faut s'assurer"
- 12x "Vous devez" → "Il faut"
- 11x "vos" → les/des
- 9x "comme par exemple" → "par exemple"
- 6x "Vous devriez" → "Il est recommandé de"
- 2x "optionel" → "optionnel"
- 2x "reportez-vous" → "se reporter"
Toutes les règles passent désormais en erreur dans la CI.
* Harmoniser les noms de workflows GitHub Actions
- integrate.yaml → build.yml (extension + nom cohérent)
- check-style-fr.yml → check-style.yml ("-fr" redondant)
- Aligner les noms de workflow et job
* Lire les règles dynamiquement depuis TRADUCTIONS.txt
Le script parse TRADUCTIONS.txt au démarrage et génère les règles
de vérification automatiquement. Plus aucune règle en dur.
* Règles dynamiques depuis TRADUCTIONS.txt
Le script CI lit les lignes INTERDIT de TRADUCTIONS.txt pour générer
les règles de vérification. Plus aucune règle en dur dans le script.
Corrige les 27 violations restantes (Depuis PHP → À partir de PHP).
* Corriger les trailing whitespace
191 lines
6.3 KiB
XML
191 lines
6.3 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- EN-Revision: 4e6f0774f03131cbeeb8c21019a690bf97fd22b6 Maintainer: yannick Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<refentry xml:id="function.version-compare" xmlns="http://docbook.org/ns/docbook">
|
|
<refnamediv>
|
|
<refname>version_compare</refname>
|
|
<refpurpose>Compare deux chaînes de version au format des versions PHP</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type class="union"><type>int</type><type>bool</type></type><methodname>version_compare</methodname>
|
|
<methodparam><type>string</type><parameter>version1</parameter></methodparam>
|
|
<methodparam><type>string</type><parameter>version2</parameter></methodparam>
|
|
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>operator</parameter><initializer>&null;</initializer></methodparam>
|
|
</methodsynopsis>
|
|
<para>
|
|
<function>version_compare</function> compare les deux versions de PHP
|
|
standardisées.
|
|
</para>
|
|
<para>
|
|
<function>version_compare</function> remplace dans un premier temps
|
|
<literal>_</literal>, <literal>-</literal> et <literal>+</literal> par un
|
|
point (<literal>.</literal>) dans les chaînes de version et insère aussi des
|
|
points avant et après tout caractère non-numérique pour que, par exemple,
|
|
'4.3.5RC1' devienne '4.3.5.RC.1'. Puis, elle compare les morceaux en
|
|
allant de gauche à droite. Si une part contient des caractères alphabétiques,
|
|
ils sont gérés dans l'ordre suivant :
|
|
<literal>any string not found in this list</literal> <
|
|
<literal>dev</literal> < <literal>alpha</literal> =
|
|
<literal>a</literal> < <literal>beta</literal> =
|
|
<literal>b</literal> < <literal>RC</literal> =
|
|
<literal>rc</literal> < <literal>#</literal> <
|
|
<literal>pl</literal> = <literal>p</literal>. De cette façon, il est possible de
|
|
comparer non seulement des versions de différents niveaux,
|
|
comme '4.1' et '4.1.2', mais aussi des versions
|
|
de développement de PHP, à n'importe quel stade.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>version1</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Premier numéro de version.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>version2</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Second numéro de version.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>operator</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Un opérateur optionnel. Les opérateurs possibles sont :
|
|
<literal><</literal>, <literal>lt</literal>,
|
|
<literal><=</literal>, <literal>le</literal>, <literal>></literal>,
|
|
<literal>gt</literal>, <literal>>=</literal>, <literal>ge</literal>,
|
|
<literal>==</literal>, <literal>=</literal>, <literal>eq</literal>,
|
|
<literal>!=</literal>, <literal><></literal>, <literal>ne</literal>
|
|
respectivement.
|
|
</para>
|
|
<para>
|
|
Ce paramètre est sensible à la casse, les valeurs doivent donc
|
|
être en minuscules.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
Par défaut, <function>version_compare</function> retourne
|
|
<literal>-1</literal> si la première version est inférieure
|
|
à la seconde, <literal>0</literal> si elles sont égales, et
|
|
<literal>1</literal> si la seconde est inférieure à la première.
|
|
</para>
|
|
<para>
|
|
Lorsque l'on utilise le paramètre optionnel <parameter>operator</parameter>,
|
|
la fonction retourne &true; si la relation est celle spécifiée par l'opérateur,
|
|
&false; sinon.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
Les exemples ci-dessous utilisent la constante
|
|
<constant>PHP_VERSION</constant>, sachant qu'elle contient la valeur
|
|
de la version de PHP utilisée pour exécuter le code.
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<title>Exemple avec <function>version_compare</function></title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
if (version_compare(PHP_VERSION, '7.0.0') >= 0) {
|
|
echo 'J\'ai au moins la version 7.0.0 de PHP ; ma version : ' . PHP_VERSION . "\n";
|
|
}
|
|
|
|
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
|
|
echo 'J\'ai au moins la version 5.3.0 de PHP ; ma version : ' . PHP_VERSION . "\n";
|
|
}
|
|
|
|
if (version_compare(PHP_VERSION, '5.0.0', '>=')) {
|
|
echo 'J\'ai au moins la version 5.0.0 de PHP ; ma version : ' . PHP_VERSION . "\n";
|
|
}
|
|
|
|
if (version_compare(PHP_VERSION, '5.0.0', '<')) {
|
|
echo 'J\'utilise encore PHP 4 ; ma version : ' . PHP_VERSION . "\n";
|
|
}
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="notes">
|
|
&reftitle.notes;
|
|
<note>
|
|
<para>
|
|
La constante <constant>PHP_VERSION</constant> contient la version courante de PHP.
|
|
</para>
|
|
</note>
|
|
<note>
|
|
<para>
|
|
Il est à noter que les versions intermédiaires, comme <literal>5.3.0-dev</literal>, sont
|
|
considérées comme inférieures à leurs versions finales (telle que 5.3.0).
|
|
</para>
|
|
</note>
|
|
<note>
|
|
<para>
|
|
Les chaînes spéciales de version comme <literal>alpha</literal> et
|
|
<literal>beta</literal> sont sensibles à la casse. Les chaînes de version
|
|
issues de sources arbitraires qui n'adhèrent pas au standard PHP
|
|
doivent être mises en minuscule en utilisant la fonction
|
|
<function>strtolower</function> avant d'appeler la fonction
|
|
<function>version_compare</function>.
|
|
</para>
|
|
</note>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member><function>phpversion</function></member>
|
|
<member><function>php_uname</function></member>
|
|
<member><function>function_exists</function></member>
|
|
</simplelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
</refentry>
|
|
<!-- 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
|
|
-->
|