<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.pgsql.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'function.pg-pconnect.php',
    1 => 'pg_pconnect',
    2 => '&Eacute;tablit une connexion PostgreSQL persistante',
  ),
  'up' => 
  array (
    0 => 'ref.pgsql.php',
    1 => 'pg_cancel_query',
  ),
  'prev' => 
  array (
    0 => 'function.pg-parameter-status.php',
    1 => 'pg_parameter_status',
  ),
  'next' => 
  array (
    0 => 'function.pg-ping.php',
    1 => 'pg_ping',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'reference/pgsql/functions/pg-pconnect.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.pg-pconnect" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">pg_pconnect</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">pg_pconnect</span> &mdash; <span class="dc-title">
   Établit une connexion PostgreSQL persistante
  </span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.pg-pconnect-description">
  <h3 class="title">Description</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>pg_pconnect</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$connection_string</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$flags</code><span class="initializer"> = 0</span></span>): <span class="type"><span class="type"><a href="class.pgsql-connection.php" class="type PgSql\Connection">PgSql\Connection</a></span>|<span class="type"><a href="language.types.singleton.php" class="type false">false</a></span></span></div>

  <p class="para rdfs-comment">
   <span class="function"><strong>pg_pconnect()</strong></span> retourne une instance <span class="classname"><a href="class.pgsql-connection.php" class="classname">PgSql\Connection</a></span>
   de connexion persistante.
  </p>
  <p class="para">
   Si un second appel est fait à <span class="function"><strong>pg_pconnect()</strong></span> avec le même
   <code class="parameter">connection_string</code> comme étant une connexion
   existante, la connexion existante sera retournée à moins qu&#039;on ne passe
   <strong><code><a href="pgsql.constants.php#constant.pgsql-connect-force-new">PGSQL_CONNECT_FORCE_NEW</a></code></strong> à
   <code class="parameter">flags</code>.
  </p>
  <p class="para">
   Pour activer les connexions persistantes, la directive de configuration
   <a href="pgsql.configuration.php#ini.pgsql.allow-persistent" class="link">pgsql.allow_persistent</a>
   du <var class="filename">php.ini</var> doit être mise à <code class="literal">On</code> (ce qui est sa valeur par défaut).
   Le nombre maximal de connexions peut être limité grâce 
   à la directive de configuration
   <a href="pgsql.configuration.php#ini.pgsql.max-persistent" class="link">pgsql.max_persistent</a>
   dans le fichier <var class="filename">php.ini</var> (par défaut, elle vaut <code class="literal">-1</code>, c&#039;est-à-dire pas de limite).
   Le nombre total de connexions peut être configuré avec la directive
   <a href="pgsql.configuration.php#ini.pgsql.max-links" class="link">pgsql.max_links</a> du fichier
   <var class="filename">php.ini</var>.
  </p>
  <p class="para">
   <span class="function"><a href="function.pg-close.php" class="function">pg_close()</a></span> ne refermera pas les connexions persistantes
   générées par <span class="function"><strong>pg_pconnect()</strong></span>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.pg-pconnect-parameters">
  <h3 class="title">Liste de paramètres</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">connection_string</code></dt>
     <dd>
      <p class="para">
       La chaîne <code class="parameter">connection_string</code> 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 <code class="literal">code =
       valeur</code>. 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 : <code class="literal">code =
       &#039;une valeur&#039;</code>. Les apostrophes et les antislashs à l&#039;intérieur
       de la valeur doivent être échappés par un antislash, c&#039;est-à-dire
       <code class="literal">\&#039;</code> et <code class="literal">\\</code>.
      </p>
      <p class="para">
       Les mots-clé actuellement reconnus sont :
       <code class="parameter">host</code>, <code class="parameter">hostaddr</code>,
       <code class="parameter">port</code>,
       <code class="parameter">dbname</code>, <code class="parameter">user</code>,
       <code class="parameter">password</code>,
       <code class="parameter">connect_timeout</code>,
       <code class="parameter">options</code>, <code class="parameter">tty</code> (ignoré),
       <code class="parameter">sslmode</code>,
       <code class="parameter">requiressl</code> (obsolète, utiliser
       <code class="parameter">sslmode</code>) et
       <code class="parameter">service</code>.
       La liste de ces arguments dépend de la version du serveur PostgreSQL.
      </p>
     </dd>
    
    
     <dt><code class="parameter">flags</code></dt>
     <dd>
      <p class="para">
       Si <strong><code><a href="pgsql.constants.php#constant.pgsql-connect-force-new">PGSQL_CONNECT_FORCE_NEW</a></code></strong> est passé en argument,
       alors une nouvelle connexion sera créée, même si la chaîne
       <code class="parameter">connection_string</code> est identique à celle de la
       connexion existante.
      </p>
     </dd>
    
   </dl>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.pg-pconnect-returnvalues">
  <h3 class="title">Valeurs de retour</h3>
  <p class="para">
   Retourne une instance de <span class="classname"><a href="class.pgsql-connection.php" class="classname">PgSql\Connection</a></span> en cas de succès,  ou <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> si une erreur survient.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.pg-pconnect-changelog">
  <h3 class="title">Historique</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Version</th>
      <th>Description</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>8.1.0</td>
      <td>
       Retourne désormais une instance de <span class="classname"><a href="class.pgsql-connection.php" class="classname">PgSql\Connection</a></span> ;
       auparavant, une <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> était retournée.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>

 
 <div class="refsect1 examples" id="refsect1-function.pg-pconnect-examples">
  <h3 class="title">Exemples</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Exemple #1 Exemple avec <span class="function"><strong>pg_pconnect()</strong></span></strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// connexion à une base de données nommée "marie"<br /></span><span style="color: #0000BB">$dbconn </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_pconnect</span><span style="color: #007700">(</span><span style="color: #DD0000">"dbname=marie"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// connexion à une base de données nommée "marie" sur l'hôte "localhost" sur le port "5432"<br /></span><span style="color: #0000BB">$dbconn2 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_pconnect</span><span style="color: #007700">(</span><span style="color: #DD0000">"host=localhost port=5432 dbname=marie"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// connexion à une base de données nommée "marie" sur l'hôte "mouton" avec un<br />// nom d'utilisateur et un mot de passe<br /></span><span style="color: #0000BB">$dk<br /><br /></span><span style="color: #FF8000">// connexion à une base de données nommée "test" sur l'hôte "mouton" avec un<br />// nom d'utilisateur et un mot de passe<br /></span><span style="color: #0000BB">$conn_string </span><span style="color: #007700">= </span><span style="color: #DD0000">"host=mouton port=5432 dbname=test user=agneau password=bar"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$dbconn4 </span><span style="color: #007700">= </span><span style="color: #0000BB">pg_pconnect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn_string</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.pg-pconnect-seealso">
  <h3 class="title">Voir aussi</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="function"><a href="function.pg-connect.php" class="function" rel="rdfs-seeAlso">pg_connect()</a> - &Eacute;tablit une connexion PostgreSQL</span></li>
    <li>
     <a href="features.persistent-connections.php" class="link">
     Connexions Persistantes</a>
    </li>
   </ul>
  </p>
 </div>

</div><?php manual_footer($setup); ?>