What are the advantages and disadvantages of using PDO versus mysqli for database connections in PHP?

When working with databases in PHP, developers often have to choose between using PDO or mysqli for database connections. PDO is a database abstraction layer that supports multiple database systems, while mysqli is specifically designed for MySQL databases. Advantages of using PDO include its support for multiple database systems, prepared statements for preventing SQL injection attacks, and object-oriented approach. On the other hand, mysqli is faster and more lightweight compared to PDO. Here is a PHP code snippet that demonstrates how to connect to a MySQL database using PDO:

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
?>