What potential pitfalls should be considered when dealing with character encoding in PHP scripts and server configurations?

When dealing with character encoding in PHP scripts and server configurations, potential pitfalls to consider include mismatched character encoding settings between the server and the script, improper handling of special characters, and security vulnerabilities such as SQL injection attacks due to encoding issues. To ensure proper character encoding in PHP scripts, set the encoding to UTF-8 in both the PHP script and the server configuration. Additionally, sanitize user input to prevent security vulnerabilities.

// Set UTF-8 encoding in PHP script
header('Content-Type: text/html; charset=utf-8');
mb_internal_encoding('UTF-8');

// Set UTF-8 encoding in server configuration
AddDefaultCharset UTF-8;

// Sanitize user input to prevent security vulnerabilities
$user_input = htmlspecialchars($_POST['user_input'], ENT_QUOTES, 'UTF-8');