07.07.2014 17:57
1
Dobrý večer.

Mám následující problém a prosím o radu.

Mám na ftp csv soubor a potřebuji mu změnit kódování, na utf-8, pomocí php.
Existuje nějaká funkce na změnu kódování souboru?

Děkuji
07.07.2014 18:03
2
Nacist v puvodnim kodovani, pomoci iconv() prekodovat a ulozit.
07.07.2014 18:08
3
Původně odeslal MadMax
Nacist v puvodnim kodovani, pomoci iconv() prekodovat a ulozit.
Díky, toho jsem našel a vyzkoušel. Ale přijde mi to takové neelegantní. Není funkce přímo na práci se souborem?
07.07.2014 18:28
4
Mozna najdes nejakou tridu, ktery podstrcis soubor a ona ho prekoduje, ale udela to stejne tak, ze ho musi nacist prekodovat a ulozit.
07.07.2014 18:46
5
Původně odeslal MadMax
Mozna najdes nejakou tridu, ktery podstrcis soubor a ona ho prekoduje, ale udela to stejne tak, ze ho musi nacist prekodovat a ulozit.
Mám na to metodu ve třídě. OK i tak díky.

$file = file_get_contents($this->soubor);

// změna kódování řetězce do UTF-8
if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $file))
{
//echo 'už to je utf-8';
}

elseif (preg_match('#[\x7F-\x9F\xBC]#', $file)){
$file=iconv("cp1250", "UTF-8", $file);


$soubor = fopen($this->soubor, "w");
fwrite($soubor, $file);
fclose($soubor);
}
07.07.2014 22:57
6
ahoj, soubor ukládej jako UTF-8 BOM takto:
Kód:
file_put_contents($soubor, "\xEF\xBB\xBF".$obsah_csv);