Skip to content

Commit d1d5216

Browse files
authored
Sync dir function with EN (#2288)
1 parent f320c44 commit d1d5216

File tree

4 files changed

+227
-211
lines changed

4 files changed

+227
-211
lines changed

reference/dir/functions/closedir.xml

Lines changed: 64 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<!-- EN-Revision: b0b19b66183b28cebc1ffbcf1e2b8763f9d9c7b3 Maintainer: yannick Status: ready -->
2+
<!-- EN-Revision: 5c7e9e1351240b5f9e0858cdeba8f754a366d1b7 Maintainer: yannick Status: ready -->
33
<!-- Reviewed: no -->
44
<refentry xml:id="function.closedir" xmlns="http://docbook.org/ns/docbook">
55
<refnamediv>
@@ -13,60 +13,83 @@
1313
<type>void</type><methodname>closedir</methodname>
1414
<methodparam choice="opt"><type class="union"><type>resource</type><type>null</type></type><parameter>dir_handle</parameter><initializer>&null;</initializer></methodparam>
1515
</methodsynopsis>
16-
<para>
16+
<simpara>
1717
<function>closedir</function> ferme le pointeur de dossier
18-
<parameter>dir_handle</parameter>. Le dossier devait avoir
19-
été ouvert auparavant avec <function>opendir</function>.
20-
</para>
18+
<parameter>dir_handle</parameter>.
19+
</simpara>
2120
</refsect1>
2221

2322
<refsect1 role="parameters">
2423
&reftitle.parameters;
25-
<para>
26-
<variablelist>
27-
<varlistentry>
28-
<term><parameter>dir_handle</parameter></term>
29-
<listitem>
30-
<para>
31-
La <type>ressource</type> de dossier ouverte précédemment avec
32-
<function>opendir</function>.
33-
</para>
34-
</listitem>
35-
</varlistentry>
36-
</variablelist>
37-
</para>
24+
<variablelist>
25+
<varlistentry>
26+
<term><parameter>dir_handle</parameter></term>
27+
<listitem>
28+
<simpara>
29+
Le gestionnaire de dossier <type>resource</type> précédemment ouvert
30+
avec <function>opendir</function>.
31+
Si <parameter>dir_handle</parameter> est &null; le dernier gestionnaire
32+
ouvert avec <function>opendir</function> sera utilisé.
33+
</simpara>
34+
</listitem>
35+
</varlistentry>
36+
</variablelist>
3837
</refsect1>
3938

4039
<refsect1 role="returnvalues">
4140
&reftitle.returnvalues;
42-
<para>
41+
<simpara>
4342
&return.void;
44-
</para>
43+
</simpara>
44+
</refsect1>
45+
46+
<refsect1 role="changelog">
47+
&reftitle.changelog;
48+
<informaltable>
49+
<tgroup cols="2">
50+
<thead>
51+
<row>
52+
<entry>&Version;</entry>
53+
<entry>&Description;</entry>
54+
</row>
55+
</thead>
56+
<tbody>
57+
<row>
58+
<entry>8.5.0</entry>
59+
<entry>
60+
Utiliser &null; pour <parameter>dir_handle</parameter> est maintenant obsolète.
61+
Au lieu de cela, le dernier gestionnaire de dossier ouvert doit être fourni explicitement.
62+
</entry>
63+
</row>
64+
<row>
65+
<entry>8.0.0</entry>
66+
<entry>
67+
<parameter>dir_handle</parameter> est désormais nullable.
68+
</entry>
69+
</row>
70+
</tbody>
71+
</tgroup>
72+
</informaltable>
4573
</refsect1>
4674

4775
<refsect1 role="examples">
4876
&reftitle.examples;
49-
<para>
50-
<example>
51-
<title>Exemple avec <function>closedir</function></title>
52-
<programlisting role="php">
53-
<![CDATA[
54-
<?php
55-
$dir = "/etc/php5/";
56-
57-
// Ouverture d'un dossier connu, lecture du dossier et assignation à
58-
// une variable, ensuite fermeture du dossier
59-
if (is_dir($dir)) {
60-
if ($dh = opendir($dir)) {
61-
$directory = readdir($dh);
62-
closedir($dh);
63-
}
64-
}
65-
?>
66-
]]>
67-
</programlisting>
68-
</example>
69-
</para>
77+
<simpara>
78+
Pour un exemple complet référez-vous à la documentation de
79+
<function>opendir</function>.
80+
</simpara>
81+
</refsect1>
82+
<refsect1 role="seealso">
83+
&reftitle.seealso;
84+
<simplelist>
85+
<member><function>opendir</function></member>
86+
<member><function>readdir</function></member>
87+
<member><function>rewinddir</function></member>
88+
<member><function>dir</function></member>
89+
<member><function>is_dir</function></member>
90+
<member><function>glob</function></member>
91+
<member><function>scandir</function></member>
92+
</simplelist>
7093
</refsect1>
7194
</refentry>
7295
<!-- Keep this comment at the end of the file

reference/dir/functions/opendir.xml

Lines changed: 74 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<!-- EN-Revision: b0b19b66183b28cebc1ffbcf1e2b8763f9d9c7b3 Maintainer: yannick Status: ready -->
2+
<!-- EN-Revision: 5c7e9e1351240b5f9e0858cdeba8f754a366d1b7 Maintainer: yannick Status: ready -->
33
<!-- Reviewed: no -->
44
<refentry xml:id="function.opendir" xmlns="http://docbook.org/ns/docbook">
55
<refnamediv>
@@ -16,55 +16,54 @@
1616
<methodparam><type>string</type><parameter>directory</parameter></methodparam>
1717
<methodparam choice="opt"><type class="union"><type>resource</type><type>null</type></type><parameter>context</parameter><initializer>&null;</initializer></methodparam>
1818
</methodsynopsis>
19-
<para>
19+
<simpara>
2020
<function>opendir</function> retourne un pointeur sur un dossier
2121
qui pour être utilisé avec les fonctions
2222
<function>closedir</function>, <function>readdir</function>
2323
et <function>rewinddir</function>.
24-
</para>
24+
</simpara>
2525
</refsect1>
2626

2727
<refsect1 role="parameters">
2828
&reftitle.parameters;
29-
<para>
30-
<variablelist>
31-
<varlistentry>
32-
<term><parameter>directory</parameter></term>
33-
<listitem>
34-
<para>
35-
Le chemin du répertoire à ouvrir
36-
</para>
37-
</listitem>
38-
</varlistentry>
39-
<varlistentry>
40-
<term><parameter>context</parameter></term>
41-
<listitem>
42-
<para>
43-
Pour la description du paramètre <parameter>context</parameter>,
44-
référez-vous à la <link linkend="ref.stream">section des flux</link> du manuel.
45-
</para>
46-
</listitem>
47-
</varlistentry>
48-
</variablelist>
49-
</para>
29+
<variablelist>
30+
<varlistentry>
31+
<term><parameter>directory</parameter></term>
32+
<listitem>
33+
<simpara>
34+
Le chemin du dossier à ouvrir.
35+
</simpara>
36+
</listitem>
37+
</varlistentry>
38+
<varlistentry>
39+
<term><parameter>context</parameter></term>
40+
<listitem>
41+
<simpara>
42+
Pour une description du paramètre <parameter>context</parameter>,
43+
référez-vous à la section <link linkend="ref.stream">les flux</link>
44+
du manuel.
45+
</simpara>
46+
</listitem>
47+
</varlistentry>
48+
</variablelist>
5049
</refsect1>
5150

5251
<refsect1 role="returnvalues">
5352
&reftitle.returnvalues;
54-
<para>
55-
Retourne la &resource; de dossier en cas de succès,
53+
<simpara>
54+
Renvoie un gestionnaire de dossier en cas de succès
5655
&return.falseforfailure;
57-
</para>
56+
</simpara>
5857
</refsect1>
5958

6059
<refsect1 role="errors">
6160
&reftitle.errors;
6261
&fs.emits.warning.on.failure;
63-
<para>
62+
<simpara>
6463
Ceci peut se produire si <parameter>directory</parameter> n'est pas un dossier
6564
valide, le dossier ne peut être ouvert pour des raisons de permissions,
6665
ou à cause d'erreurs liées au système de fichiers.
67-
</para>
66+
</simpara>
6867
</refsect1>
6968

7069
<refsect1 role="changelog">
@@ -81,7 +80,7 @@
8180
<row>
8281
<entry>8.0.0</entry>
8382
<entry>
84-
<parameter>context</parameter> is now nullable.
83+
<parameter>context</parameter> est désormais nullable.
8584
</entry>
8685
</row>
8786
</tbody>
@@ -91,49 +90,65 @@
9190

9291
<refsect1 role="examples">
9392
&reftitle.examples;
94-
<para>
95-
<example>
96-
<title>Exemple avec <function>opendir</function></title>
97-
<programlisting role="php">
93+
<example>
94+
<title>
95+
Liste toutes les entrées d'un dossier, en ignorant les entrées spéciales
96+
<literal>.</literal> et <literal>..</literal>
97+
</title>
98+
<simpara>
99+
Du fait que les entrées de dossier et de fichier peuvent être des chaînes et évaluer comme "faux"
100+
(par exemple un dossier nommé <literal>"0"</literal>), et que
101+
<function>readdir</function> retourne &false; lorsqu'il a lu toutes les
102+
entrées d'un dossier, il faut utiliser
103+
<link linkend="language.operators.comparison">l'opérateur de comparaison</link>
104+
<literal>===</literal> pour distingué proprement une entrée de dossier
105+
dont le nom est "faux" d'une entrée de dossier qui a été lue
106+
et qui est &false;.
107+
</simpara>
108+
<programlisting role="php">
98109
<![CDATA[
99110
<?php
100-
$dir = "/tmp/php5";
111+
if ($handle = opendir('/path/to/files')) {
112+
echo "Entries:\n";
101113
102-
// Ouvre un dossier bien connu, et liste tous les fichiers
103-
if (is_dir($dir)) {
104-
if ($dh = opendir($dir)) {
105-
while (($file = readdir($dh)) !== false) {
106-
echo "fichier : $file : type : " . filetype($dir . $file) . "\n";
114+
/* Correctly handling directory entries that may be considered falsy */
115+
while (false !== ($entry = readdir($handle))) {
116+
if ($entry === '.' || $entry === '..') {
117+
continue;
107118
}
108-
closedir($dh);
119+
echo "$entry\n";
109120
}
121+
122+
closedir($handle);
110123
}
111124
?>
112125
]]>
113-
</programlisting>
114-
&example.outputs.similar;
115-
<screen>
126+
</programlisting>
127+
&example.outputs.similar;
128+
<screen>
116129
<![CDATA[
117-
fichier : . : type : dir
118-
fichier : .. : type : dir
119-
fichier : apache : type : dir
120-
fichier : cgi : type : dir
121-
fichier : cli : type : dir
130+
Entries:
131+
base
132+
en
133+
fr
134+
output.md
135+
test.php
122136
]]>
123-
</screen>
124-
</example>
125-
</para>
137+
</screen>
138+
</example>
126139
</refsect1>
127140

128141
<refsect1 role="seealso">
129142
&reftitle.seealso;
130-
<para>
131-
<simplelist>
132-
<member><function>is_dir</function></member>
133-
<member><function>readdir</function></member>
134-
<member><function>dir</function></member>
135-
</simplelist>
136-
</para>
143+
<simplelist>
144+
<member><function>readdir</function></member>
145+
<member><function>rewinddir</function></member>
146+
<member><function>closedir</function></member>
147+
<member><function>dir</function></member>
148+
<member><function>is_dir</function></member>
149+
<member><function>glob</function></member>
150+
<member><function>scandir</function></member>
151+
</simplelist>
137152
</refsect1>
138153
</refentry>
139154
<!-- Keep this comment at the end of the file

0 commit comments

Comments
 (0)