PDO::__construct

(no version information, might be only in CVS)

PDO::__construct --  Creates a PDO instance to represent a connection to a database

Description

PDO PDO::__construct ( string dsn, string username, string password [, array driver_opts])

警告

この関数は、 実験的なステータスにあります。これは、この関数の 動作、関数名、ここで書かれていること全てがPHPの将来のバージョンで予告 なく変更される可能性があることを意味します。注意を喚起するとともに自分 のリスクでこの関数を使用して下さい。

Creates a PDO instance to represent a connection to the requested database. The dsn parameter supports three different methods of specifying the arguments required to create a database connection:

Driver invocation

dsn consists of the PDO driver name, followed by a colon, followed by the PDO driver-specific connection syntax. For example, 'odbc:DSN=SAMPLE;UID=db2inst1;PWD=ibmdb2' would create a PDO_ODBC connection to an ODBC database, while 'mysql:host=127.0.0.1;dbname=testdb' would create a PDO_MYSQL connection to a MySQL database.

URI invocation

dsn consists of uri: 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.

Aliasing

dsn consists of a name name that maps to pdo.dsn.name in php.ini defining the DSN string. name can not contain a colon.

If username or password are not required to complete the connection, you must pass empty strings or the constructor will throw a PDOException exception.

例 1. Create a PDO instance via driver invocation

<?php
/* Connect to an ODBC database using driver invocation */

$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
try {
  
$dbh = new PDO($dsn, $user, $password);
}
catch (PDOException $e) {
  echo
'Connection failed: ' . $e->getMessage();
}
?>

例 2. Create a PDO instance via URI invocation

The following example assumes that the file /usr/local/dbconnect 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:

odbc:DSN=SAMPLE;UID=db2inst1;PWD=password

The PHP script can then create a database connection by simply passing the uri: parameter and pointing to the file URI:

<?php
/* Connect to an ODBC database using driver invocation */

$dsn = 'uri:file:///usr/local/dbconnect';
$user = '';
$password = '';
try {
  
$dbh = new PDO($dsn, $user, $password);
}
catch (PDOException $e) {
  echo
'Connection failed: ' . $e->getMessage();
}
?>

例 3. Create a PDO instance using an alias

The following example assumes that php.ini contains the following entry to enable a connection to a MySQL database using only the alias mydb:
pdo.dsn.mydb=mysql:dbname=testdb;host=127.0.0.1

<?php
/* Connect to an ODBC database using an alias */

$dsn = 'mydb';
$user = '';
$password = '';
try {
  
$dbh = new PDO($dsn, $user, $password);
}
catch (PDOException $e) {
  echo
'Connection failed: ' . $e->getMessage();
}
?>