How can the use of INSERT ... ON DUPLICATE KEY UPDATE in PHP help in managing duplicate entries in a database?

When inserting data into a database, it is common to encounter duplicate entries which can lead to data inconsistency. By using the "INSERT ... ON DUPLICATE KEY UPDATE" query in PHP, you can manage duplicate entries by either inserting a new record or updating an existing record if a duplicate key constraint is violated.

<?php
// Establish a database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";

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

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

// Insert or update data using INSERT ... ON DUPLICATE KEY UPDATE query
$sql = "INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2') ON DUPLICATE KEY UPDATE column2 = 'new_value'";
if ($conn->query($sql) === TRUE) {
    echo "Record inserted/updated successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

// Close the database connection
$conn->close();
?>