Files
doc-fr/reference/pgsql/functions/pg-pconnect.xml
George Peter Banyard 8e82164d85 Apply commit c2eca73ef79ebe78cebb34053e41b565af504c4f
[PHP 8.1] Use PgSql objects instead of resources
2021-10-16 20:03:39 +01:00

190 lines
6.5 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: c2eca73ef79ebe78cebb34053e41b565af504c4f Maintainer: jsgoupil Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.pg-pconnect" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>pg_pconnect</refname>
<refpurpose>
Établit une connexion PostgreSQL persistante
</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> retourne une instance <classname>PgSql\Connection</classname>
de connexion persistante.
</para>
<para>
Si un second appel est fait à <function>pg_pconnect</function> avec le même
<parameter>connection_string</parameter> comme étant une connexion
existante, la connexion existante sera retournée à moins que vous ne passez
<constant>PGSQL_CONNECT_FORCE_NEW</constant> à
<parameter>flags</parameter>.
</para>
<para>
Pour activer les connexions persistantes, la directive de configuration
<link linkend="ini.pgsql.allow-persistent"><option>pgsql.allow_persistent</option></link>
du &php.ini; doit être mise à &quot;On&quot; (ce qui est sa valeur par défaut).
Le nombre maximal de connexions peut être limité grâce
à la directive de configuration
<link linkend="ini.pgsql.max-persistent"><option>pgsql.max_persistent</option></link>
dans le fichier &php.ini; (par défaut, elle vaut -1, c'est à dire pas de limite).
Le nombre total de connexions peut être configuré avec la directive
<link linkend="ini.pgsql.max-links"><option>pgsql.max_links</option></link> du fichier
&php.ini;.
</para>
<para>
<function>pg_close</function> ne refermera pas les connexions persistantes
générées par <function>pg_pconnect</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>connection_string</parameter></term>
<listitem>
<para>
La chaîne <parameter>connection_string</parameter> peut être vide pour
utiliser tous les paramètres par défaut ou elle peut contenir un ou
plusieurs paramètres de configuration séparés par des espaces.
Chaque paramètre de configuration est sous la forme <literal>code =
valeur</literal>. Les espaces autour du signe égal sont optionnels.
Pour écrire une valeur vide ou une valeur contenant des espaces,
entourez cette valeur avec des apostrophes, par exemple : <literal>code =
'une valeur'</literal>. Les apostrophes et les antislashs à l'intérieur
de la valeur doivent être échappés par un antislash, c'est-à-dire
\' et \\.
</para>
<para>
Les mots-clé actuellement reconnus sont :
<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> (ignoré),
<parameter>sslmode</parameter>,
<parameter>requiressl</parameter> (obsolète, utilisez
<parameter>sslmode</parameter>) et
<parameter>service</parameter>. La liste de ces arguments dépend de
la version de votre serveur PostgreSQL.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Si <constant>PGSQL_CONNECT_FORCE_NEW</constant> est passé en argument,
alors une nouvelle connexion sera créée, même si la chaîne
<parameter>connection_string</parameter> est identique à celle de la
connexion existante.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Retourne une instance de <classname>PgSql\Connection</classname> en cas de succès, &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>
Retourne désormais une instance de <classname>PgSql\Connection</classname> ;
auparavant, une &resource; était retourné.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Exemple avec <function>pg_pconnect</function></title>
<programlisting role="php">
<![CDATA[
<?php
$dbconn = pg_pconnect("dbname=marie");
// connexion à une base de données nommée "marie"
$dbconn2 = pg_pconnect("host=localhost port=5432 dbname=marie");
// connexion à une base de données nommée "marie" sur l'hôte "localhost" sur le port "5432"
$dbconn3 = pg_pconnect("host=mouton port=5432 dbname=marie user=agneau password=foo");
// connexion à une base de données nommée "marie" sur l'hôte "mouton" avec un
// nom d'utilisateur et un mot de passe
$conn_string = "host=mouton port=5432 dbname=test user=agneau password=bar";
$dbconn4 = pg_pconnect($conn_string);
// connexion à une base de données nommée "test" sur l'hôte "mouton" avec un
// nom d'utilisateur et un mot de passe
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>pg_connect</function></member>
<member>
<link linkend="features.persistent-connections">
Connexions Persistantes</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
-->