среда, 12 марта 2014 г.

fgetcsv проблемы с кириллицей

При чтении csv  с кириллицей возникла проблема с кодировкой, текст просто не отображался.
В сети нашел несколько вариантов, но завести с ходу удалось только 1

function convert($str)
{
     return iconv("Windows-1251", "UTF-8", $str);
}

public function load($filename)
{
    if (($handle = fopen($filename, "r")) !== FALSE)
    {
        while (($data = fgetcsv($handle, 0, ';')) !== FALSE)
        {
          $data = array_map(array($this,'convert'), $data);
            $this->save_row($data);
        }
        fclose($handle);
    } else
    {
        $this->loger->add("Не удалось открыть файл");
    }
}