Skip to content

Commit 4d7e9a2

Browse files
committed
new translation
1 parent 12ba662 commit 4d7e9a2

1 file changed

Lines changed: 174 additions & 0 deletions

File tree

Lines changed: 174 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,174 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!-- $Revision$ -->
3+
<!-- EN-Revision: 3cd337b4dc91c827399961b9b45524ae4f2b50c9 Maintainer: samesch Status: ready -->
4+
5+
<sect1 xml:id="migration71.windows-support" xmlns:xlink="http://www.w3.org/1999/xlink">
6+
<title>Windows-Unterstützung</title>
7+
8+
<sect2 xml:id="migration71.windows-support.long-and-utf8-path">
9+
<title>Unterstützung für lange Pfade und UTF-8-Pfade</title>
10+
<para>
11+
Wenn eine Webanwendung UTF-8-konform ist, sind keine weiteren Maßnahmen
12+
erforderlich. Für Anwendungen, die auf Pfade angewiesen sind, die nicht
13+
UTF-8-kodiert sind, muss eine explizite INI-Direktive gesetzt werden. Die
14+
Prüfung der INI-Einstellungen für die Kodierung hängt von der Reihenfolge
15+
im Kern ab:
16+
</para>
17+
<itemizedlist>
18+
<listitem>
19+
<simpara>
20+
internal_encoding
21+
</simpara>
22+
</listitem>
23+
<listitem>
24+
<simpara>
25+
default_charset
26+
</simpara>
27+
</listitem>
28+
<listitem>
29+
<simpara>
30+
zend.multibyte
31+
</simpara>
32+
</listitem>
33+
</itemizedlist>
34+
<para>
35+
Es wurden mehrere Funktionen zur Handhabung von Codepages eingeführt:
36+
</para>
37+
<itemizedlist>
38+
<listitem>
39+
<simpara>
40+
sapi_windows_cp_set(), um die Standard-Codepage festzulegen
41+
</simpara>
42+
</listitem>
43+
<listitem>
44+
<simpara>
45+
sapi_windows_cp_get(), um die aktuelle Codepage abzurufen
46+
</simpara>
47+
</listitem>
48+
<listitem>
49+
<simpara>
50+
sapi_windows_cp_is_utf8()
51+
</simpara>
52+
</listitem>
53+
<listitem>
54+
<simpara>
55+
sapi_windows_cp_conv(), um unter Verwendung einer mit iconv()
56+
kompatiblen Signatur zwischen Codepages zu konvertieren
57+
</simpara>
58+
</listitem>
59+
</itemizedlist>
60+
<para>
61+
Diese Funktionen sind threadsicher.
62+
</para>
63+
<para>
64+
Die Codepage für die Konsolenausgabe wird abhängig von der intern in PHP
65+
verwendeten Kodierung festgelegt. Je nach konkreter OEM-Codepage des
66+
Systems kann die sichtbare Ausgabe korrekt sein oder nicht. Zum Beispiel
67+
wird die Ausgabe in der standardmäßigen cmd.exe und auf einem System mit
68+
der OEM-Codepage 437 in den Codepages 1251, 1252, 1253 und einigen anderen
69+
korrekt angezeigt, wenn UTF-8 verwendet wird. Auf dem gleichen System
70+
werden Zeichen in Codepages wie 20932 wahrscheinlich nicht korrekt
71+
angezeigt. Dies hängt ab von den jeweiligen Systemregel für die Codepage,
72+
der Kompatibilität der Schriftart und dem verwendeten Konsolenprogramm. PHP
73+
konfiguriert die Codepage der Konsole automatisch gemäß den
74+
Kodierungsregeln der php.ini. Eine andere Konsole zu verwenden als cmd.exe
75+
selbst, kann in manchen Fällen zu einem besseren Ergebnis führen.
76+
</para>
77+
<para>
78+
Es ist jedoch zu beachten, dass ein Wechsel der Codepage zur Laufzeit nach
79+
dem Start der Anfrage unerwartete Nebeneffekte auf die CLI haben kann. Die
80+
bevorzugte Methode führt über die php.ini. Wenn PHP-CLI in einem
81+
Konsolen-Emulator verwendet wird, der kein Unicode unterstützt, ist es
82+
möglicherweise ratsam, die Konsolen-Codepage nicht zu ändern. Die beste
83+
Möglichkeit, dies zu erreichen, ist, die Standard- oder interne Kodierung
84+
entsprechend der ANSI-Codepage einzustellen. Eine Alternative ist, die
85+
INI-Direktiven output_encoding und input_encoding auf die gewünschte
86+
Codepage zu setzen, wobei in diesem Fall der Unterschied zwischen interner
87+
und E/A-Codepage jedoch wahrscheinlich zu Zeichensalat führt. In seltenen
88+
Fällen kann es vorkommen, dass bei einem Absturz von PHP die ursprüngliche
89+
Konsolen-Codepage möglicherweise nicht wiederhergestellt wird. In diesem
90+
Fall kann der Befehl chcp verwendet werden, um sie manuell
91+
wiederherzustellen.
92+
</para>
93+
<para>
94+
Besondere Vorsicht ist bei DBCS-Systemen (Systeme mit
95+
Doublebyte-Characterset) geboten - die Codepage zur Laufzeit mittels
96+
<function>ini_set</function> zu ändern, kann zu Darstellungsproblemen
97+
führen. Der Unterschied zu Nicht-DBCS-Systemen ist, dass die erweiterten
98+
Zeichen zwei Konsolenzellen für die Anzeige benötigen. In bestimmten Fällen
99+
kann es vorkommen, dass Zeichen in den Glyphensatz der Schriftart
100+
abgebildet werden, ohne die Schriftart zu ändern. Dies liegt in der Natur
101+
der DBCS-Systeme und die einfachste Methode, Darstellungsprobleme zu
102+
vermeiden, besteht darin, die Codepage nicht per
103+
<function>ini_set</function> zu ändern.
104+
</para>
105+
<para>
106+
Infolge der Unterstützung von UTF-8 in den Streams sind PHP-Skripte nicht
107+
mehr auf nicht mehr auf ASCII- oder ANSI-Dateinamen beschränkt. Dies wird
108+
standardmäßig von der CLI unterstützt. Für andere SAPIs ist die
109+
Dokumentation für den entsprechenden Server hilfreich.
110+
</para>
111+
<para>
112+
Die Unterstützung langer Pfade ist transparent. Pfaden, die mehr als 260
113+
Bytes haben, wird automatisch ein <literal>\?\</literal> vorangestellt. Die
114+
maximale Pfadlänge ist auf 2048 Bytes begrenzt. Es ist zu beachten, dass
115+
die Begrenzung der Pfadsegmente (Länge des Basisnamens) weiterhin gilt.
116+
</para>
117+
<para>
118+
Um die beste Portabilität zu erreichen, wird dringend empfohlen, für
119+
Dateinamen, I/O und andere verwandte Themen UTF-8 zu verwenden. Außerdem
120+
ist für Konsolenanwendungen eine TrueType-Schriftart zu bevorzugen. Darüber
121+
hinaus wird davon abgeraten, ini_set() für für die Änderung der Codepage zu
122+
verwenden.
123+
</para>
124+
</sect2>
125+
126+
<sect2 xml:id="migration71.windows-support.readline">
127+
<title>readline</title>
128+
<para>
129+
Die Erweiterung <link linkend="book.readline">readline</link> wird nun von
130+
der <link xlink:href="&url.readline.windows;">WinEditLine</link>-Bibliothek
131+
unterstützt, wodurch die interaktive <acronym>CLI</acronym>-Shell nun
132+
ebenfalls unterstützt wird (<literal>php.exe -a</literal>).
133+
</para>
134+
</sect2>
135+
136+
<sect2 xml:id="migration71.windows-support.php-fcgi-children">
137+
<title>PHP_FCGI_CHILDREN</title>
138+
<para>
139+
Die Umgebungsvariable <varname>PHP_FCGI_CHILDREN</varname> wird nun
140+
berücksichtigt. Wenn sie definiert ist, führt der erste
141+
<filename>php-cgi.exe</filename>-Prozess die angegebene Anzahl von
142+
Unterprozessen aus. Diese teilen sich denselben TCP-Socket.
143+
</para>
144+
</sect2>
145+
146+
<sect2 xml:id="migration71.windows-support.ftok">
147+
<title>ftok()</title>
148+
<para>
149+
Die Unterstützung für <function>ftok</function> wurde hinzugefügt
150+
</para>
151+
</sect2>
152+
153+
</sect1>
154+
155+
<!-- Keep this comment at the end of the file
156+
Local variables:
157+
mode: sgml
158+
sgml-omittag:t
159+
sgml-shorttag:t
160+
sgml-minimize-attributes:nil
161+
sgml-always-quote-attributes:t
162+
sgml-indent-step:1
163+
sgml-indent-data:t
164+
indent-tabs-mode:nil
165+
sgml-parent-document:nil
166+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
167+
sgml-exposed-tags:nil
168+
sgml-local-catalogs:nil
169+
sgml-local-ecat-files:nil
170+
End:
171+
vim600: syn=xml fen fdm=syntax fdl=2 si
172+
vim: et tw=78 syn=sgml
173+
vi: ts=1 sw=1
174+
-->

0 commit comments

Comments
 (0)