What are best practices for debugging PHP code related to database connections and queries?

Issue: When debugging PHP code related to database connections and queries, it's important to check for errors in the connection setup, SQL syntax, and data retrieval process. Code snippet:

// Establish database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Execute SQL query
$sql = "SELECT * FROM table_name";
$result = $conn->query($sql);

// Check for errors in query execution
if (!$result) {
    die("Error executing query: " . $conn->error);
}

// Fetch and display data
while ($row = $result->fetch_assoc()) {
    echo "Column1: " . $row["column1"] . " - Column2: " . $row["column2"] . "<br>";
}

// Close connection
$conn->close();