Anzitutto conviene che le pagine HTML dichiarino la codifica utilizzata con un opportuno tag:
<head> <meta charset="UTF-8">
Verificare anche se è il caso di definire la codifica di default impostata nel server web. Per Apache esiste la direttiva AddDefaultCharset UTF-8
che Debian Jessie mette (ma disabilitata) in /etc/apache2/conf-available/charset.conf
.
Anche le form che inviano dati al server è opportuno che dichiarino esplicitamente il set di caratteri da usare (altrimenti vale la codifica della pagina che contiene il form):
<form method="post" action="form_process.php" accept-charset="UTF-8">
Può essere utile esplicitare la codifica da utilizzare durante il colloquio con un database, ad esempio Con PostgreSQL:
pg_set_client_encoding($dbh, 'UNICODE');
// Come mettere un carattere Unicode in una variabile. // Ad esempio il carattere "bullet" che ha code point "U+2022": $char = html_entity_decode('•', ENT_NOQUOTES, 'UTF-8');