Why is it recommended to use PDO or mysqli instead of the mysql_ extension in PHP?

The mysql_ extension in PHP is deprecated and has been removed in PHP 7.0. It is recommended to use PDO (PHP Data Objects) or mysqli (MySQL Improved) extensions instead, as they provide more secure and flexible options for connecting to databases. These extensions also support prepared statements, which help prevent SQL injection attacks.

// Using PDO to connect to a MySQL database
$dsn = 'mysql:host=localhost;dbname=mydatabase';
$username = 'username';
$password = 'password';

try {
    $pdo = new PDO($dsn, $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}