1
0
mirror of https://github.com/php/doc-de.git synced 2026-03-24 07:12:15 +01:00
Files
archived-doc-de/reference/pgsql/functions/pg-pconnect.xml
Martin Samesch d46404d19b Sync with EN
2025-04-09 14:45:45 +02:00

190 lines
6.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 3b2503bdcbbffc9bd1381078ee06c298d4f8a49a Maintainer: conni Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.pg-pconnect" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>pg_pconnect</refname>
<refpurpose>Öffnet eine persistente PostgreSQL-Verbindung</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>PgSql\Connection</type><type>false</type></type><methodname>pg_pconnect</methodname>
<methodparam><type>string</type><parameter>connection_string</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
<function>pg_pconnect</function> öffnet eine persistente Verbindung zu
einer PostgreSQL-Datenbank. Zurückgegeben wird eine <classname>PgSql\Connection</classname>-Instanz, die
von anderen PostgreSQL-Funktionen benötigt wird.
</para>
<para>
Falls <function>pg_pconnect</function> ein zweites Mal mit demselben
<parameter>connection_string</parameter> einer bereits existierenden
Verbindung aufgerufen wird, wird die Verbindungskennung dieser
existierenden Verbindung zurückgegeben, es sei denn, die Konstante
<constant>PGSQL_CONNECT_FORCE_NEW</constant> wird als
<parameter>flags</parameter> übergeben.
</para>
<para>
Um persistente Verbindungen zu ermöglichen, muss die &php.ini;-Direktive
<link linkend="ini.pgsql.allow-persistent">pgsql.allow_persistent</link>
auf den Wert <literal>"On"</literal> gesetzt sein (was der
Standardeinstellung entspricht). Die maximale Anzahl geöffneter persistenter
Verbindungen kann mit der &php.ini;-Direktive
<link linkend="ini.pgsql.max-persistent">pgsql.max_persistent</link>
definiert werden (der Standardwert ist <literal>-1</literal>, der für
unbegrenzt steht). Die Gesamtanzahl der Verbindungen kann mit der
&php.ini;-Direktive
<link linkend="ini.pgsql.max-links">pgsql.max_links</link> gesetzt werden.
</para>
<para>
<function>pg_close</function> schließt keine persistenten Verbindungen, die
mit <function>pg_pconnect</function> erzeugt wurden.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>connection_string</parameter></term>
<listitem>
<para>
Der <parameter>connection_string</parameter> kann leer sein, um die
Standardwerte für die Parameter zu benutzen. Er kann auch einen oder
mehrere durch Whitespace-Zeichen getrennte Parameter enthalten. Jeder
Parameter wird in der Form <literal>keyword = Wert</literal> angegeben,
Leerzeichen vor und nach dem Gleichheitszeichen sind optional. Um einen
leeren Wert oder einen Wert, der Leerzeichen enthält, anzugeben, müssen
Sie den Wert in einfache Anführungszeichen einschließen, zum Beispiel
<literal>keyword = 'ein Wert'</literal>. Einfache Anführungszeichen und
Backslashes innerhalb des Wertes müssen mit einem Backslash maskiert
werden, &dh; <literal>\'</literal> und <literal>\\</literal>.
</para>
<para>
Gegenwärtig werden die folgenden Schlüsselwörter als Parameter erkannt:
<parameter>host</parameter>, <parameter>hostaddr</parameter>,
<parameter>port</parameter>, <parameter>dbname</parameter>,
<parameter>user</parameter>, <parameter>password</parameter>,
<parameter>connect_timeout</parameter>, <parameter>options</parameter>,
<parameter>tty</parameter> (wird ignoriert),
<parameter>sslmode</parameter>, <parameter>requiressl</parameter>
(veraltet zugunsten von <parameter>sslmode</parameter>) und
<parameter>service</parameter>.
Welche dieser Parameter zur Verfügung stehen, hängt von Ihrer
PostgreSQL-Version ab.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Falls <constant>PGSQL_CONNECT_FORCE_NEW</constant> übergeben wurde,
wird eine neue Verbindung aufgebaut, auch wenn der
<parameter>connection_string</parameter> identisch zu dem einer
existierenden Verbindung ist.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Bei Erfolg wird eine <classname>PgSql\Connection</classname>-Instanz zurückgegeben. &return.falseforfailure;
</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.1.0</entry>
<entry>
Gibt nun eine <classname>PgSql\Connection</classname>-Instanz zurück;
vorher wurde eine &resource; zurückgegeben.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>pg_pconnect</function> benutzen:</title>
<programlisting role="php">
<![CDATA[
<?php
// Verbindungsaufbau zu einer Datenbank namens "mary"
$dbconn = pg_pconnect("dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf "localhost" und port "5432"
$dbconn2 = pg_pconnect("host=localhost port=5432 dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem Host
// "sheep" mit Benutzername und Passwort
$dbconn3 = pg_pconnect("host=sheep port=5432 dbname=mary user=lamb password=foo");
// Verbindungsaufbau zu einer Datenbank namens "test" auf dem Host
// "sheep" mit Benutzername und Passwort
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_pconnect($conn_string);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>pg_connect</function></member>
<member>
<link linkend="features.persistent-connections">
Persistente Datenbankverbindungen</link>
</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
-->