Mysql
 sql >> Base de données >  >> RDS >> Mysql

mysqli ou PDO - quels sont les avantages et les inconvénients ?

Eh bien, vous pourriez discuter avec l'aspect orienté objet, les instructions préparées, le fait que cela devienne un standard, etc. Mais je sais que la plupart du temps, convaincre quelqu'un fonctionne mieux avec une fonctionnalité qui tue. Alors voilà :

Une chose vraiment intéressante avec PDO est que vous pouvez récupérer les données, en les injectant automatiquement dans un objet. Si vous ne souhaitez pas utiliser un ORM (parce que c'est juste un script rapide) mais vous aimez le mappage d'objets, c'est VRAIMENT cool :

class Student {

    public $id;
    public $first_name;
    public $last_name

    public function getFullName() {
        return $this->first_name.' '.$this->last_name
    }
}

try 
{
    $dbh = new PDO("mysql:host=$hostname;dbname=school", $username, $password)

    $stmt = $dbh->query("SELECT * FROM students");

    /* MAGIC HAPPENS HERE */

    $stmt->setFetchMode(PDO::FETCH_INTO, new Student);


    foreach($stmt as $student)
    {
        echo $student->getFullName().'<br />';
    } 

    $dbh = null;
}
catch(PDOException $e)
{
    echo $e->getMessage();
}