Mysql
 sql >> Database >  >> RDS >> Mysql

set di caratteri php mysql:memorizzazione di html di contenuti internazionali

MySQL esegue al volo conversioni di set di caratteri in qualcosa chiamato connessione set di caratteri . Puoi specificare questo set di caratteri usando l'istruzione sql

SET NAMES utf8

oppure usa una funzione API specifica come mysql_set_charset() :

mysql_set_charset("utf8", $conn);

Se ciò viene eseguito correttamente non è necessario utilizzare funzioni come utf8_encode() e utf8_decode().

Devi anche assicurarti che il browser utilizzi la stessa codifica. Questo di solito viene fatto usando una semplice intestazione:

header('Content-type: text/html;charset=utf-8');

(Nota che il set di caratteri si chiama utf-8 nel browser ma utf8 in MySQL.)

Nella maggior parte dei casi, il set di caratteri di connessione e il set di caratteri web sono le uniche cose di cui devi tenere traccia, quindi se ancora non funziona c'è probabilmente qualcos'altro che stai facendo di sbagliato. Prova a sperimentarlo un po', di solito ci vuole un po' per capirlo appieno.