In PHP, what strategies can be implemented to prevent duplicate database entries when querying values with different cases?

When querying values from a database, one strategy to prevent duplicate entries with different cases is to normalize the data before inserting or comparing. This can be done by converting all values to a consistent case, such as lowercase or uppercase, before performing any operations. By doing this, you ensure that the database does not store duplicate entries based on case sensitivity.

// Normalize the input value to lowercase before querying the database
$inputValue = strtolower($inputValue);

// Check if the value already exists in the database
$query = "SELECT COUNT(*) FROM table_name WHERE LOWER(column_name) = :inputValue";
$stmt = $pdo->prepare($query);
$stmt->bindParam(':inputValue', $inputValue);
$stmt->execute();
$count = $stmt->fetchColumn();

if ($count > 0) {
    // Value already exists in the database
    // Handle duplicate entry case
} else {
    // Proceed with inserting the value into the database
}