How can PHP developers ensure secure database connections and queries?

To ensure secure database connections and queries in PHP, developers should use parameterized queries to prevent SQL injection attacks. This involves using prepared statements with placeholders for user input, rather than directly inserting user input into SQL queries. Additionally, developers should also use secure connection methods, such as using PDO or MySQLi with SSL encryption.

// Establish a secure database connection using PDO
$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);
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

// Use parameterized queries to prevent SQL injection
$stmt = $conn->prepare("SELECT * FROM users WHERE username = :username");
$stmt->bindParam(':username', $username);
$stmt->execute();
$result = $stmt->fetchAll();