mirror of
https://github.com/php/doc-de.git
synced 2026-03-23 23:02:13 +01:00
Sync with EN
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 31d42a7a6e9ecf4227f6b1dc6936eccd40846fa7 Maintainer: cmb Status: ready -->
|
||||
<!-- EN-Revision: 08e58ace7e5b538c8ed75d784a54885d5f785d30 Maintainer: cmb Status: ready -->
|
||||
<chapter xml:id="language.generators" xmlns="http://docbook.org/ns/docbook">
|
||||
<title>Generatoren</title>
|
||||
|
||||
@@ -9,23 +9,24 @@
|
||||
<?phpdoc print-version-for="generators"?>
|
||||
|
||||
<para>
|
||||
Generatoren bieten eine einfache Möglichkeit, um einfache <link
|
||||
linkend="language.oop5.iterations">Iteratoren</link> zu erstellen, ohne
|
||||
den Overhead oder die Komplexität der Erstellung einer Klasse zu haben,
|
||||
die das <classname>Iterator</classname>-Interface implementiert.
|
||||
Generatoren bieten eine einfache Möglichkeit, um einfache
|
||||
<link linkend="language.oop5.iterations">Iteratoren</link> zu erstellen,
|
||||
ohne den Overhead oder die Komplexität der Erstellung einer Klasse zu
|
||||
haben, die das <classname>Iterator</classname>-Interface implementiert.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Ein Generator ermöglicht es Code zu schreiben, der &foreach; nutzt, um über
|
||||
eine Datenmenge zu iterieren, ohne ein Array im Speicher zu erzeugen,
|
||||
was zur Überschreitung des Speicherlimits führen kann oder beträchtliche
|
||||
Prozessorzeit benötigt. Alternativ können Sie eine Generatorfunktion
|
||||
schreiben, die einer normalen <link
|
||||
linkend="functions.user-defined">Funktion</link> entspricht, bei der aber
|
||||
keine einmalige <link linkend="functions.returning-values">Rückgabe</link>
|
||||
erfolgt, sondern der Generator so oft wie nötig einen Wert abgibt
|
||||
(Stichwort: &yield;), um die Werte zu liefern, über die iteriert werden
|
||||
soll.
|
||||
Mit einem Generator können auf bequeme Weise Daten für &foreach; -Schleifen
|
||||
bereitgestellt werden, ohne ein Array im Speicher zu erzeugen, was dazu
|
||||
führen kann, dass das Programm ein Speicherlimit überschreitet oder
|
||||
beträchtliche Prozessorzeit benötigt. Alternativ kann eine Generatorfunktion
|
||||
verwendet werden, die einer normalen
|
||||
<link linkend="functions.user-defined">Funktion</link> entspricht, bei der
|
||||
aber keine einmalige
|
||||
<link linkend="functions.returning-values">Rückgabe</link> erfolgt, sondern
|
||||
der Generator so oft wie nötig einen Wert abgibt (Stichwort: &yield;), um
|
||||
die Werte zu liefern, über die iteriert werden soll.
|
||||
Wie bei Iteratoren ist ein wahlfreier Datenzugriff nicht möglich.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 5bc68add3da3cd18c40f851e944b15095d3a26aa Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: ee14f82484f6289278255f798f1e8b93cdc2cab5 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.change-user" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
<refname>mysqli::change_user</refname>
|
||||
<refname>mysqli_change_user</refname>
|
||||
<refpurpose>Ändert den Benutzer der angegebenen Datenbankverbindung</refpurpose>
|
||||
<refpurpose>Ändert den Benutzer der Datenbankverbindung</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsect1 role="description">
|
||||
@@ -27,8 +27,13 @@
|
||||
<methodparam><type class="union"><type>string</type><type>null</type></type><parameter>database</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ändert den Benutzer der angegebenen Datenbankverbindung und legt die
|
||||
aktuelle Datenbank fest.
|
||||
Versucht, mit den angegebenen Anmeldeinformationen eine Verbindung zur
|
||||
angegebenen Datenbank herzustellen.
|
||||
</para>
|
||||
<para>
|
||||
Im Gegensatz zu <methodname>mysqli::connect</methodname> trennt diese
|
||||
Methode die aktuelle Verbindung nicht, wenn die neue Verbindung nicht
|
||||
geöffnet werden kann.
|
||||
</para>
|
||||
<para>
|
||||
Für einen erfolgreichen Benutzerwechsel müssen gültige Werte für die
|
||||
@@ -65,13 +70,9 @@
|
||||
<term><parameter>database</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Die Datenbank, zu der gewechselt werden soll
|
||||
</para>
|
||||
<para>
|
||||
Falls gewünscht, kann der Wert &null; übergeben werden, was dazu führt,
|
||||
dass nur der Benutzer gewechselt und keine Datenbank ausgewählt wird.
|
||||
Um in diesem Fall eine Datenbank auszuwählen, muss die Funktion
|
||||
<function>mysqli_select_db</function> verwendet werden.
|
||||
Der Name der Datenbank. Wenn &null; oder eine leere Zeichenkette
|
||||
übergeben wird, wird die Verbindung zum Server ohne Standard-Datenbank
|
||||
geöffnet.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -94,82 +95,51 @@
|
||||
<refsect1 role="examples">
|
||||
&reftitle.examples;
|
||||
<example>
|
||||
<title><methodname>mysqli::change_user</methodname>-Beispiel</title>
|
||||
<title>Zurücksetzen der Verbindungs-Session</title>
|
||||
<para>&style.oop;</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
/* Verbindung zur Datenbank test aufbauen */
|
||||
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
|
||||
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");
|
||||
|
||||
/* Verbindung überprüfen */
|
||||
if (mysqli_connect_errno()) {
|
||||
printf("Verbindung fehlgeschlagen: %s\n", mysqli_connect_error());
|
||||
exit();
|
||||
}
|
||||
|
||||
/* Variable a setzen */
|
||||
$mysqli->query("SET @a:=1");
|
||||
|
||||
/* alles zurücksetzen und eine neue Datenbank auswählen */
|
||||
$mysqli->change_user("my_user", "my_password", "world");
|
||||
|
||||
if ($result = $mysqli->query("SELECT DATABASE()")) {
|
||||
$row = $result->fetch_row();
|
||||
printf("Standard-Datenbank: %s\n", $row[0]);
|
||||
$result->close();
|
||||
}
|
||||
$result = $mysqli->query("SELECT DATABASE()");
|
||||
$row = $result->fetch_row();
|
||||
printf("Standard-Datenbank: %s\n", $row[0]);
|
||||
|
||||
if ($result = $mysqli->query("SELECT @a")) {
|
||||
$row = $result->fetch_row();
|
||||
if ($row[0] === NULL) {
|
||||
printf("Der Wert der Variable a ist NULL\n");
|
||||
}
|
||||
$result->close();
|
||||
$result = $mysqli->query("SELECT @a");
|
||||
$row = $result->fetch_row();
|
||||
if ($row[0] === null) {
|
||||
printf("Der Wert der Variable a ist NULL\n");
|
||||
}
|
||||
|
||||
/* Verbindung schließen */
|
||||
$mysqli->close();
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>&style.procedural;</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
/* Verbindung zur Datenbank test aufbauen */
|
||||
|
||||
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
|
||||
$link = mysqli_connect("localhost", "my_user", "my_password", "test");
|
||||
|
||||
/* Verbindung überprüfen */
|
||||
if (!$link) {
|
||||
printf("Verbindung fehlgeschlagen: %s\n", mysqli_connect_error());
|
||||
exit();
|
||||
}
|
||||
|
||||
/* Variable a setzen */
|
||||
mysqli_query($link, "SET @a:=1");
|
||||
|
||||
/* alles zurücksetzen und eine neue Datenbank auswählen */
|
||||
mysqli_change_user($link, "my_user", "my_password", "world");
|
||||
|
||||
if ($result = mysqli_query($link, "SELECT DATABASE()")) {
|
||||
$row = mysqli_fetch_row($result);
|
||||
printf("Standard-Datenbank: %s\n", $row[0]);
|
||||
mysqli_free_result($result);
|
||||
}
|
||||
$result = mysqli_query($link, "SELECT DATABASE()");
|
||||
$row = mysqli_fetch_row($result);
|
||||
printf("Standard-Datenbank: %s\n", $row[0]);
|
||||
|
||||
if ($result = mysqli_query($link, "SELECT @a")) {
|
||||
$row = mysqli_fetch_row($result);
|
||||
if ($row[0] === NULL) {
|
||||
printf("Der Wert der Variable a ist NULL\n");
|
||||
}
|
||||
mysqli_free_result($result);
|
||||
$result = mysqli_query($link, "SELECT @a");
|
||||
$row = mysqli_fetch_row($result);
|
||||
if ($row[0] === null) {
|
||||
printf("Der Wert der Variable a ist NULL\n");
|
||||
}
|
||||
|
||||
/* Verbindung schließen */
|
||||
mysqli_close($link);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
&examples.outputs;
|
||||
@@ -177,6 +147,30 @@ mysqli_close($link);
|
||||
<![CDATA[
|
||||
Standard-Datenbank: world
|
||||
Der Wert der Variable a ist NULL
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<example>
|
||||
<title>Wenn <parameter>database</parameter> &null; ist, wird die Verbindung ohne Auswahl einer Standard-Datenbank geöffnet</title>
|
||||
<para>&style.oop;</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
|
||||
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");
|
||||
|
||||
$mysqli->change_user("my_user", "my_password", null);
|
||||
|
||||
$result = $mysqli->query("SELECT DATABASE()");
|
||||
$row = $result->fetch_row();
|
||||
printf("Standard-Datenbank: %s\n", $row[0]);
|
||||
]]>
|
||||
</programlisting>
|
||||
&examples.outputs;
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Standard-Datenbank:
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 63b99082ef83eade08151f8cb528246fded81db9 Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: 3bbf9e31d58a54743c8509cbce76567efd4de5d1 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.kill" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
@@ -55,6 +55,30 @@
|
||||
&mysqli.conditionalexception;
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="changelog">
|
||||
&reftitle.changelog;
|
||||
<informaltable>
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry>&Version;</entry>
|
||||
<entry>&Description;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>8.4.0</entry>
|
||||
<entry>
|
||||
Sowohl <methodname>mysqli::kill</methodname> als auch
|
||||
<function>mysqli_kill</function> sind nun veraltet. Stattdessen sollte
|
||||
der SQL-Befehl <literal>KILL</literal> verwendet werden.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
&reftitle.examples;
|
||||
<example>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 63b99082ef83eade08151f8cb528246fded81db9 Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: 1afd3581fea176162adacef6dd692dfc114410f3 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.ping" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
@@ -62,6 +62,31 @@
|
||||
&mysqli.conditionalexception;
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="changelog">
|
||||
&reftitle.changelog;
|
||||
<informaltable>
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry>&Version;</entry>
|
||||
<entry>&Description;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>8.4.0</entry>
|
||||
<entry>
|
||||
Sowohl <methodname>mysqli::ping</methodname> als auch
|
||||
<function>mysqli_ping</function> sind nun veraltet.
|
||||
Die Funktionalität <literal>reconnect</literal> ist seit PHP 8.2.0 nicht
|
||||
mehr verfügbar, wodurch diese Funktion überflüssig wurde.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
&reftitle.examples;
|
||||
<example>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 035c126c0393fe154bac46e2c3c489ebadce48a5 Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: 4d68e15db0907404cad6c78ac274fd8f8c31fba3 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.refresh" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refnamediv>
|
||||
@@ -59,6 +59,30 @@
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="changelog">
|
||||
&reftitle.changelog;
|
||||
<informaltable>
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry>&Version;</entry>
|
||||
<entry>&Description;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>8.4.0</entry>
|
||||
<entry>
|
||||
Sowohl <methodname>mysqli::refresh</methodname> als auch
|
||||
<function>mysqli_refresh</function> sind nun veraltet. Stattdessen
|
||||
sollte der SQL-Befehl <literal>FLUSH</literal> verwendet werden.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="seealso">
|
||||
&reftitle.seealso;
|
||||
<para>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 90953eddaa06c6c83faf0dea76c241dfafeaa2a1 Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: 699e596aaba256f7c3c81be8bb309e12fbd03ef4 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.store-result" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
@@ -105,6 +105,29 @@
|
||||
&mysqli.conditionalexception;
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="changelog">
|
||||
&reftitle.changelog;
|
||||
<informaltable>
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry>&Version;</entry>
|
||||
<entry>&Description;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>8.4.0</entry>
|
||||
<entry>
|
||||
Die Übergabe des Parameters <parameter>mode</parameter> ist nun veraltet.
|
||||
Der Parameter hat seit PHP 8.1.0 keine Wirkung mehr.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
&reftitle.examples;
|
||||
<para>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 7e5d0d1bb69180c9de1992edf9613215c975fa57 Maintainer: samesch Status: ready -->
|
||||
<!-- EN-Revision: 1afd3581fea176162adacef6dd692dfc114410f3 Maintainer: samesch Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<refentry xml:id="mysqli.thread-id" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
@@ -23,8 +23,8 @@
|
||||
aktuellen Verbindung zurück, die dann mit der Funktion
|
||||
<function>mysqli_kill</function> beendet werden kann. Wenn die Verbindung
|
||||
unterbrochen wird und mit <function>mysqli_ping</function> wieder aufgebaut
|
||||
wird, ist die Thread-ID eine andere. Daher sollte die Thread-ID nur
|
||||
abgefragt werden, wenn sie benötigt wird.
|
||||
wird, ändert sich die Thread-ID. Daher sollte die Thread-ID nur abgefragt
|
||||
werden, wenn sie benötigt wird.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 082ddc19f53e6e254010de1a1fbbe485ff744ec1 Maintainer: nobody Status: ready -->
|
||||
<!-- EN-Revision: 216c5dc1ef01b98d6ccafe51056e4df68e77cbf6 Maintainer: nobody Status: ready -->
|
||||
<!-- Reviewed: yes -->
|
||||
<!-- Rev-Revision 91bec719b351e11e6f0fe618f091edbb82b9acc2 Reviewer: samesch -->
|
||||
<refentry xml:id="pdostatement.execute" xmlns="http://docbook.org/ns/docbook">
|
||||
@@ -157,7 +157,7 @@ $sth->execute();
|
||||
/* Führt ein Prepared Statement mit einem Array für eine IN-Klausel aus */
|
||||
$params = array(1, 21, 63, 171);
|
||||
/* Erstelle einen String für die Parameter-Platzhalter, gefüllt bis zur Anzahl Parameter */
|
||||
$place_holders = implode(',', array_fill(0, count($params), '?'));
|
||||
$place_holders = '?' . str_repeat(', ?', count($params) - 1);
|
||||
|
||||
/*
|
||||
Das bereitet das Statement mit genügend unbenannten Platzhaltern
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- EN-Revision: 3994d010e9374ae4f56707cbb22b1811a4cc1963 Maintainer: sergey Status: ready -->
|
||||
<!-- EN-Revision: eff22719b03a83400103686b87d5b470c1d5c785 Maintainer: sergey Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<!-- $Revision$ -->
|
||||
<reference xml:id="class.arrayobject" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
@@ -16,8 +16,8 @@
|
||||
</para>
|
||||
<note>
|
||||
<simpara>
|
||||
Diese Klasse hat konzeptionelle Mängel, weshalb von ihrer Verwendung
|
||||
abgeraten wird.
|
||||
Diese Klasse als Wrapper für Objekte zu verwenden, ist grundsätzlich
|
||||
problematisch, weshalb von ihrer Verwendung mit Objekten abgeraten wird.
|
||||
</simpara>
|
||||
</note>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user