PHP & MySQL

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Tenzij anders aangegeven, gebruikt dit artikel PDO voor database-connecties.

Drivers

  • MySQLi en PDO lijken anno 2019 de twee belangrijkste drivers/API's te zijn
  • mysql_ is oud en begraven
  • Daarnaast bestaan er ook voor PHP ORM's

PDO

  • Generiek voor diverse databases - Boeit niet, want ik gebruik momenteel alleen MySQL
  • Niet zo up-to-date als MySQLi
  • "A really nice thing with PDO is you can fetch the data, injecting it automatically in an object. If you don't want to use an ORM (cause it's a just a quick script) but you do like object mapping, it's REALLY cool" [1]

MySQLi

  • Meer up-to-date
  • Primitiever

Conclusie

  • [2] (juni 2018): PDO
  • [3] (feb. 2012): PDO
  • [4] (2003): PDO

Connect (PDO)

Voorbeeld:

<?php

###############################################################
# Connect with dwh through PDO
###############################################################
#
$servername = "localhost";
$dbname     = "example";
$username   = "supervrouw";
$password   = "geheim";

try 
{
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    
    # set the PDO error mode to exception
    #####################################
    #
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully\n"; 
}
catch(PDOException $e)
{
    echo "Connection failed: " . $e->getMessage()."\n";
}