svn: /phpdoc/de/trunk/ language/namespaces.xml language/oop5/changelog.xml language/oop5/inheritance.xml language/oop5/overloading.xml reference/array/functions/array-filter.xml reference/array/functions/array-search.xml
[email protected] (Oliver Albers)
| Newsgroups | php.doc.de |
|---|---|
| Message-ID | <[email protected]> |
simp Tue, 03 May 2011 09:07:08 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=310733
Log:
Sync to EN
Changed paths:
U phpdoc/de/trunk/language/namespaces.xml
U phpdoc/de/trunk/language/oop5/changelog.xml
U phpdoc/de/trunk/language/oop5/inheritance.xml
U phpdoc/de/trunk/language/oop5/overloading.xml
U phpdoc/de/trunk/reference/array/functions/array-filter.xml
U phpdoc/de/trunk/reference/array/functions/array-search.xml
svn-diffs-310733.txt
(text/x-diff, 9.9 KB)
Modified: phpdoc/de/trunk/language/namespaces.xml
===================================================================
--- phpdoc/de/trunk/language/namespaces.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/language/namespaces.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 301115 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 309629 Maintainer: simp Status: ready -->
<chapter xml:id="language.namespaces" xmlns="http://docbook.org/ns/docbook"
version="1.1">
<title>Namespaces</title>
@@ -615,9 +615,10 @@
Datei oder ein Verzeichnis anzulegen.
</para>
<para>
- PHP-Namespaces unterstützen zwei Arten von Aliasen oder Importen: Einen Alias
- für einen Klassennamen und einen Alias für einen Namespace. Beachten Sie, dass
- das importieren einer Funktion oder Konstanten nicht unterstützt wird.
+ PHP-Namespaces unterstützen drei Arten von Aliasen oder Importen: Einen Alias
+ für einen Klassennamen, einen Alias für einen Interfacenamen und einen Alias
+ für einen Namespace. Beachten Sie, dass das importieren einer Funktion oder
+ Konstanten nicht unterstützt wird.
</para>
<para>
Ein Alias wird in PHP mittels des <literal>use</literal>-Operators angelegt. Hier ein
@@ -634,13 +635,13 @@
use My\Full\NSname;
// importiert eine globale Klasse
-use \ArrayObject;
+use ArrayObject;
$obj = new namespace\Another; // erzeugt ein Objekt der Klasse foo\Another
$obj = new Another; // erzeugt ein Objekt der Klasse My\Full\Classname
NSname\subns\func(); // ruft die Funktion My\Full\NSname\subns\func auf
$a = new ArrayObject(array(1)); // erzeugt ein Objekt der Klasse ArrayObject
-// ohne das "use \ArrayObject" wäre ein Objekt der Klasse foo\ArrayObject erzeugt worden
+// ohne das "use ArrayObject" wäre ein Objekt der Klasse foo\ArrayObject erzeugt worden
?>
]]>
</programlisting>
@@ -648,7 +649,7 @@
Beachten Sie, dass für Namen von Namespaces (vollständig qualifizierte Namespacenamen
mit einem Namensraumseparator, wie <literal>Foo\Bar</literal>, im Gegensatz zu
globalen Namen ohne Separator, wie <literal>FooBar</literal>) der führende
- Backslash nicht notwendig und nicht erlaubt ist, weil importierte Namen vollständig
+ Backslash nicht notwendig und nicht empfohlen ist, weil importierte Namen vollständig
qualifiziert sein müssen und nicht relativ zum aktuellen Namespace verarbeitet
werden.
</para>
@@ -708,6 +709,43 @@
</example>
</para>
</sect1>
+ <sect2 xml:id="language.namespaces.importing.scope">
+ <title>Gültigkeitsbereiche für Importe</title>
+ <para>
+ Das Schlüsselwort <literal>use</literal> muss im äußersten Gültigkeitsbereich
+ (dem globalen Gültigkeitsbereich) oder innerhalb einer Namespace-Deklaration
+ angegeben werden. Das ist darin begründet, dass Importe zur Kompilierungszeit
+ und nicht zur Laufzeit durchgeführt werden und daher nicht in einem anderen
+ Gültigkeitsbereich liegen dürfen. Das folgende Beispiel zeigt eine ungültige
+ Verwendung des <literal>use</literal>-Schlüsselwortes:
+ </para>
+ <para>
+ <example>
+ <title>Ungültige Importregel</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+namespace Languages;
+
+class Greenlandic
+{
+ use Languages\Danish;
+
+ ...
+}
+?>
+]]>
+ </programlisting>
+ </example>
+ </para>
+ <note>
+ <para>
+ Importregeln sind auf Dateibasis gültig, das heißt eine eingebundene Datei
+ wird <emphasis>NICHT</emphasis> die Importregeln der einbindenden Datei erben.
+ </para>
+ </note>
+ </sect2>
+ </sect1>
<sect1 xml:id="language.namespaces.global">
<title>Globaler Namensraum</title>
<para>
@@ -1010,7 +1048,7 @@
// wenn die Klasse "A\A\B" nicht bekannt ist, so wird
// versucht die Klasse "A\A\B" mittels Autoload zu laden
-\A\B::foo(); // ruft die Methode "foo" der Klasse "B" aus dem Namespace "A\B" auf
+\A\B::foo(); // ruft die Methode "foo" der Klasse "B" aus dem Namespace "A" auf
// wenn die Klasse "A\B" nicht bekannt ist, so wird
// versucht die Klasse "A\B" mittels Autoload zu laden
?>
Modified: phpdoc/de/trunk/language/oop5/changelog.xml
===================================================================
--- phpdoc/de/trunk/language/oop5/changelog.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/language/oop5/changelog.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 301474 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 304554 Maintainer: simp Status: ready -->
<sect1 xml:id="language.oop5.changelog" xmlns="http://docbook.org/ns/docbook">
<title>OOP-Changelog</title>
<para>
@@ -29,6 +29,14 @@
Änderung beeinflusst Klassen außerhalb von Namespaces nicht.
</entry>
</row>
+ <row>
+ <entry>5.3.0</entry>
+ <entry>
+ Geändert: Klassen, die Interfaces implementieren, welche Methoden mit Vorgabewerten
+ in ihrem Prototypen enthalten müssen nicht mehr dem Vorgabewert des Interfaces
+ entsprechen.
+ </entry>
+ </row>
<row>
<entry>5.3.0</entry>
<entry>
Modified: phpdoc/de/trunk/language/oop5/inheritance.xml
===================================================================
--- phpdoc/de/trunk/language/oop5/inheritance.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/language/oop5/inheritance.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297028 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 304570 Maintainer: simp Status: ready -->
<sect1 xml:id="language.oop5.inheritance" xmlns="http://docbook.org/ns/docbook">
<title>Objekt-Vererbung</title>
<para>
@@ -21,6 +21,16 @@
implementieren, ohne sämtliche gemeinsame Funktionalitäten neu
implementieren zu müssen.
</para>
+
+ <note>
+ <para>
+ Wenn Autoloading nicht verwendet wird, so müssen die Klassen definiert werden
+ bevor sie verwendet werden. Wenn eine Klasse eine andere erweitert, so muss die
+ Vaterklasse vor der Kindklasse deklariert werden. Diese Regel gilt für Klassen,
+ die von anderen Klassen und Interfaces erben.
+ </para>
+ </note>
+
<sect2 xml:id="language.oop5.inheritance.examples">
<example xml:id="language.oop5.inheritance.examples.ex1">
<title>Beispiel für Vererbung</title>
@@ -82,4 +92,4 @@
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
--->
+-->
\ No newline at end of file
Modified: phpdoc/de/trunk/language/oop5/overloading.xml
===================================================================
--- phpdoc/de/trunk/language/oop5/overloading.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/language/oop5/overloading.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297638 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 304662 Maintainer: simp Status: ready -->
<sect1 xml:id="language.oop5.overloading" xmlns="http://docbook.org/ns/docbook">
<title>Überladung</title>
@@ -153,6 +153,20 @@
</para>
</note>
+ <note>
+ <para>
+ Es ist unmöglich überladene Eigenschaften in anderen Sprachkonstrukten als
+ <function>isset</function> zu verwenden. Das heißt, falls
+ <function>empty</function> für eine überladene Eigenschaft aufgerufen wird,
+ so wird die Überladungsmethode nicht aufgerufen.
+ </para>
+ <para>
+ Diese Einschränkung kann umgangen werden, indem die überladene Eigenschaft
+ in eine lokale Variable des aktuellen Gültigkeitsbereiches kopiert wird
+ und diese an <function>empty</function> übergeben wird.
+ </para>
+ </note>
+
<example>
<title>
Überladung von Eigenschaften mit den Methoden
Modified: phpdoc/de/trunk/reference/array/functions/array-filter.xml
===================================================================
--- phpdoc/de/trunk/reference/array/functions/array-filter.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/reference/array/functions/array-filter.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297028 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 305207 Maintainer: simp Status: ready -->
<!-- CREDITS: tom -->
<refentry xml:id="function.array-filter" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -82,11 +82,13 @@
<?php
function ungerade($var)
{
+ // Gibt zurück, ob der Eingabewert ungerade ist
return($var & 1);
}
function gerade($var)
{
+ // Gibt zurück, ob der Eingabewert gerade ist
return(!($var & 1));
}
Modified: phpdoc/de/trunk/reference/array/functions/array-search.xml
===================================================================
--- phpdoc/de/trunk/reference/array/functions/array-search.xml 2011-05-03 08:38:51 UTC (rev 310732)
+++ phpdoc/de/trunk/reference/array/functions/array-search.xml 2011-05-03 09:07:08 UTC (rev 310733)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297786 Maintainer: simp Status: ready -->
+<!-- EN-Revision: 309257 Maintainer: simp Status: ready -->
<!-- CREDITS: tom -->
<refentry xml:id="function.array-search" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -14,7 +14,7 @@
<type>mixed</type><methodname>array_search</methodname>
<methodparam><type>mixed</type><parameter>needle</parameter></methodparam>
<methodparam><type>array</type><parameter>haystack</parameter></methodparam>
- <methodparam choice="opt"><type>bool</type><parameter>strict</parameter></methodparam>
+ <methodparam choice="opt"><type>bool</type><parameter>strict</parameter><initializer>false</initializer></methodparam>
</methodsynopsis>
<para>
Durchsucht <parameter>haystack</parameter> nach