PDO::connect()

Från Wiki.linux.se
Version från den 22 december 2024 kl. 08.15 av Admin (diskussion | bidrag) (→‎Exempel 3: Skapa en PDO-instans med ett alias)
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

PDO::__construct

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)

PDO::__construct — Skapar en PDO-instans som representerar en anslutning till en databas.

Beskrivning

public PDO::__construct(

   string $dsn,
   ?string $username = null,
   #[\SensitiveParameter] ?string $password = null,
   ?array $options = null

)

Skapar en PDO-instans som representerar en anslutning till den angivna databasen.

Parametrar

dsn
Data Source Name (DSN) innehåller informationen som krävs för att ansluta till databasen.
Generellt består en DSN av PDO-driverns namn följt av ett kolon och därefter driverns specifika anslutningssyntax. Ytterligare information finns i dokumentationen för den specifika PDO-drivern.
Parametern dsn stödjer tre olika metoder för att ange argumenten som krävs för att skapa en databasanslutning:
  • Driver-anrop: dsn innehåller hela DSN-strängen.
  • URI-anrop: dsn börjar med uri: följt av en URI som definierar platsen för en fil som innehåller DSN-strängen. URI:n kan specificera en lokal fil eller en fjärr-URL:
 uri:file:///path/to/dsnfile  
  • Alias: dsn består av ett namn som mappar till pdo.dsn.name i php.ini där DSN-strängen definieras.
Notera: Alias måste definieras i php.ini och kan inte definieras i .htaccess eller httpd.conf.
username
Användarnamnet för DSN-strängen. Denna parameter är valfri för vissa PDO-drivrutiner.
password
Lösenordet för DSN-strängen. Denna parameter är valfri för vissa PDO-drivrutiner.
options
En array med nyckel=>värde som innehåller drivarspecifika anslutningsalternativ.

Fel/Uppslag

En PDOException kastas om försöket att ansluta till den begärda databasen misslyckas, oavsett vilket PDO::ATTR_ERRMODE som för närvarande är inställt.

Exempel

Exempel 1: Skapa en PDO-instans via driver-anrop

<?php

$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';

$dbh = new PDO($dsn, $user, $password);

?>

Exempel 2: Skapa en PDO-instans via URI-anrop

Följande exempel förutsätter att filen /usr/local/dbconnect existerar med filbehörigheter som tillåter PHP att läsa filen. Filen innehåller DSN-strängen för att ansluta till en DB2-databas via PDO_ODBC-drivern:

odbc:DSN=SAMPLE;UID=john;PWD=mypass

PHP-skriptet kan då skapa en databasanslutning genom att helt enkelt skicka uri:-parametern och peka på filens URI:

<?php

$dsn = 'uri:file:///usr/local/dbconnect';
$user = '';
$password = '';

$dbh = new PDO($dsn, $user, $password);

?>

Exempel 3: Skapa en PDO-instans med ett alias

Följande exempel förutsätter att php.ini innehåller följande post för att möjliggöra en anslutning till en MySQL-databas med bara aliaset mydb:

[PDO]
pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"

PHP-kod:

<?php

$dsn = 'mydb';
$user = '';
$password = '';

$dbh = new PDO($dsn, $user, $password);

?>

Sidslut

Orginalhemsidan på Engelska :https://www.php.net/manual/en/pdo.construct.php
PHP Funktioner Funktionsreferens Databas-tillägg


Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Huddinge Datorhjälp som har sponsrat Linux.se med webbhotell.