On 06/22/2013 07:13 PM, Sandro kensan wrote:
> On 06/22/2013 07:02 PM, Sandro kensan wrote:
>> Ho il database mysql con il setchar latin swedish ci che dovrebbe essere
>> l'ISO-8859-1.
>
> Ecco ho trovato l'inghippo che non è spiegato chiaramente. Mysql non usa
> il charset ISO ma quello di windows lo CP1252, quindi un bel
> iconv("CP1252", "UTF-8", $data) risolve ogni problema.
Sto cercando e forse lo trovo ma sapete dirmi se esiste una conversione
automatica della codifica dei caratteri *solo* in uscita da mysql.
Qualche casa del tipo $row = mysql_fetch_array($ro, "convert CP1252 to
UTF8") o analogo?
Ho visto che uno ha risolto il problema con una funzione di questo tipo:
I needed a method for recursive iconv. I didn't find one, so wrote it
myself and I'd like to share it. Mabye someone will need it.
<?php
public function recursive_iconv(string $in_charset, string $out_charset,
$arr){
if (!is_array($arr)){
return iconv($in_charset, $out_charset, $arr);
}
$ret = $arr;
function array_iconv(&$val, $key, $userdata){
$val = iconv($userdata[0], $userdata[1], $val);
}
array_walk_recursive($ret, "array_iconv", array($in_charset,
$out_charset));
return $ret;
}
?>
Applicata a $row = mysql_fetch_array($ro) risolverebbe il problema ma
chiedo se esiste un modo più semplice.