Oui, le problème est là :
$nom_topic = chop(substr($cur_topic['subject'], 0, $nbre_carac_max/2)).'...';
substr() ne supporte pas les caractères multi-octets, donc coupe au milieu du 'é' dans l'exemple (oui, très très fort), donc il reste un immonde caractère non représentable sous nos yeux globuleux et ébahis (propri<c3> sous vim en mode binaire).
Oui, le problème est là : $cur_topic[ 'subject' ], 0, $nbre_carac_ max/2)) .'...';
$nom_topic = chop(substr(
substr() ne supporte pas les caractères multi-octets, donc coupe au milieu du 'é' dans l'exemple (oui, très très fort), donc il reste un immonde caractère non représentable sous nos yeux globuleux et ébahis (propri<c3> sous vim en mode binaire).
Je vais voir pour remplacer ça par mb_string().