Sophie

Sophie

distrib > Mageia > 7 > i586 > by-pkgid > 2b917e0437961edec048f1d15e2d7449 > files > 11229

php-manual-en-7.2.11-1.mga7.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Creates a PDO instance representing a connection to a database</title>

 </head>
 <body><div class="manualnavbar" style="text-align: center;">
 <div class="prev" style="text-align: left; float: left;"><a href="pdo.commit.html">PDO::commit</a></div>
 <div class="next" style="text-align: right; float: right;"><a href="pdo.errorcode.html">PDO::errorCode</a></div>
 <div class="up"><a href="class.pdo.html">PDO</a></div>
 <div class="home"><a href="index.html">PHP Manual</a></div>
</div><hr /><div id="pdo.construct" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">PDO::__construct</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.1.0, PHP 7, PECL pdo &gt;= 0.1.0)</p><p class="refpurpose"><span class="refname">PDO::__construct</span> &mdash; <span class="dc-title">
   Creates a PDO instance representing a connection to a database
  </span></p>

 </div>
 <div class="refsect1 description" id="refsect1-pdo.construct-description">
  <h3 class="title">Description</h3>
  <div class="constructorsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><strong>PDO::__construct</strong></span>
    ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$dsn</code></span>
   [, <span class="methodparam"><span class="type">string</span> <code class="parameter">$username</code></span>
   [, <span class="methodparam"><span class="type">string</span> <code class="parameter">$passwd</code></span>
   [, <span class="methodparam"><span class="type">array</span> <code class="parameter">$options</code></span>
  ]]] )</div>

  <p class="para rdfs-comment">
   Creates a PDO instance to represent a connection to the requested
   database. 
  </p>
 </div>

 <div class="refsect1 parameters" id="refsect1-pdo.construct-parameters">
  <h3 class="title">Parameters</h3>
  <p class="para">
   <dl>

    <dt>
dsn</dt>

     <dd>

      <p class="para">
       The Data Source Name, or DSN, contains the information required to
       connect to the database.
      </p>
      <p class="para">
       In general, a DSN consists of the PDO driver name, followed by a colon,
       followed by the PDO driver-specific connection syntax. Further
       information is available from the <a href="pdo.drivers.html" class="link">PDO
       driver-specific documentation</a>.
      </p>
      <p class="para">
       The <code class="parameter">dsn</code> parameter supports three
       different methods of specifying the arguments required to create
       a database connection:
      </p>
      <p class="para">
       <dl>

        <dt>
Driver invocation</dt>

         <dd>

          <p class="para">
           <code class="parameter">dsn</code> contains the full DSN.
          </p>
         </dd>

        
        <dt>
URI invocation</dt>

         <dd>

          <p class="para">
           <code class="parameter">dsn</code> consists of <strong class="userinput"><code>uri:</code></strong>
           followed by a URI that defines the location of a file containing
           the DSN string. The URI can specify a local file or a remote URL.
          </p>
          <p class="para"><strong class="userinput"><code>uri:file:///path/to/dsnfile</code></strong></p>
         </dd>

        
        <dt>
Aliasing</dt>

         <dd>

          <p class="para">
           <code class="parameter">dsn</code> consists of a name 
           <code class="parameter">name</code> that maps to 
           <code class="code">pdo.dsn.<code class="parameter">name</code></code> in <var class="filename">php.ini</var>
           defining the DSN string.
          </p>
          <blockquote class="note"><p><strong class="note">Note</strong>: 
           <p class="para">
            The alias must be defined in <var class="filename">php.ini</var>, and not <var class="filename">.htaccess</var> or <var class="filename">httpd.conf</var>
           </p>
          </p></blockquote>
         </dd>

        
       </dl>

      </p>
     </dd>

    
    <dt>
username</dt>

     <dd>

      <p class="para">
       The user name for the DSN string. This parameter is optional for
       some PDO drivers.
      </p>
     </dd>

    
    <dt>
passwd</dt>

     <dd>

      <p class="para">
       The password for the DSN string. This parameter is optional for
       some PDO drivers.
      </p>
     </dd>

    
    <dt>
options</dt>

     <dd>

      <p class="para">
       A key=&gt;value array of driver-specific connection options.
      </p>
     </dd>

    
   </dl>

  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-pdo.construct-returnvalues">
  <h3 class="title">Return Values</h3>
  <p class="para">
   Returns a PDO object on success.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-pdo.construct-errors">
  <h3 class="title">Errors/Exceptions</h3>
  <p class="para">
   <span class="function"><strong>PDO::__construct()</strong></span> throws a <a href="class.pdoexception.html" class="classname">PDOException</a> if the attempt
   to connect to the requested database fails.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-pdo.construct-examples">
  <h3 class="title">Examples</h3>
  <p class="para">
   <div class="example" id="example-1039"><p><strong>Example #1 Create a PDO instance via driver invocation</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">/*&nbsp;Connect&nbsp;to&nbsp;a&nbsp;MySQL&nbsp;database&nbsp;using&nbsp;driver&nbsp;invocation&nbsp;*/<br /></span><span style="color: #0000BB">$dsn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'mysql:dbname=testdb;host=127.0.0.1'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$user&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'dbuser'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'dbpass'</span><span style="color: #007700">;<br /><br />try&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$dbh&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">$dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$password</span><span style="color: #007700">);<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;$e</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">'Connection&nbsp;failed:&nbsp;'&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">$e</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getMessage</span><span style="color: #007700">();<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

   </div>
   <div class="example" id="example-1040"><p><strong>Example #2 Create a PDO instance via URI invocation</strong></p>
    <div class="example-contents"><p>
     The following example assumes that the file
     <var class="filename">/usr/local/dbconnect</var> exists with file permissions
     that enable PHP to read the file. The file contains the PDO DSN to
     connect to a DB2 database through the PDO_ODBC driver:
    </p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
odbc:DSN=SAMPLE;UID=john;PWD=mypass
</pre></div>
    </div>
    <div class="example-contents"><p>
     The PHP script can then create a database connection by simply
     passing the <em>uri:</em> parameter and pointing to
     the file URI:
    </p></div>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/*&nbsp;Connect&nbsp;to&nbsp;an&nbsp;ODBC&nbsp;database&nbsp;using&nbsp;driver&nbsp;invocation&nbsp;*/<br /></span><span style="color: #0000BB">$dsn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'uri:file:///usr/local/dbconnect'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$user&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">;<br /><br />try&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$dbh&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">$dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$password</span><span style="color: #007700">);<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;$e</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">'Connection&nbsp;failed:&nbsp;'&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">$e</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getMessage</span><span style="color: #007700">();<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

   </div>
   <div class="example" id="example-1041"><p><strong>Example #3 Create a PDO instance using an alias</strong></p>
    <div class="example-contents"><p>
     The following example assumes that <var class="filename">php.ini</var> contains the following
     entry to enable a connection to a MySQL database using only the
     alias <em>mydb</em>:
    </p></div>
    <div class="example-contents"><div class="inicode"><pre class="inicode">[PDO]
pdo.dsn.mydb=&quot;mysql:dbname=testdb;host=localhost&quot;</pre>
</div></div>

    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/*&nbsp;Connect&nbsp;to&nbsp;an&nbsp;ODBC&nbsp;database&nbsp;using&nbsp;an&nbsp;alias&nbsp;*/<br /></span><span style="color: #0000BB">$dsn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'mydb'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$user&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$password&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">;<br /><br />try&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$dbh&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">$dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$password</span><span style="color: #007700">);<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;$e</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">'Connection&nbsp;failed:&nbsp;'&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">$e</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getMessage</span><span style="color: #007700">();<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

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


 <div class="refsect1 changelog" id="refsect1-pdo.construct-changelog">
  <h3 class="title">Changelog</h3>
  <p class="para">
   <table class="doctable informaltable">
    
     <thead>
      <tr>
       <th>Version</th>
       <th>Description</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>5.3.0</td>
       <td>
        Classes which extends <a href="class.pdo.html" class="classname">PDO</a> and implements the <em>__call</em> 
        magic method will now receive the method name in the declared casing. Previously this was always 
        lower case.
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </div>

</div><hr /><div class="manualnavbar" style="text-align: center;">
 <div class="prev" style="text-align: left; float: left;"><a href="pdo.commit.html">PDO::commit</a></div>
 <div class="next" style="text-align: right; float: right;"><a href="pdo.errorcode.html">PDO::errorCode</a></div>
 <div class="up"><a href="class.pdo.html">PDO</a></div>
 <div class="home"><a href="index.html">PHP Manual</a></div>
</div></body></html>