Jak w temacie proszę o pomoc w napisaniu parsera plików csv. Wiem że php oferuje juz gotowe rozwiązanie w postaci fgetcsv, natomiast funkcja ta ma problem z obcymi znakami, np cyrylica, hebrajskie i chociazby polskie ogonki.
wyciaganie poprzez fgetcsv danych z csvłki z wymienionymi wyzej znaczkami powoduje wykasowanie owych znaków, natomiast ten sam plik otwarty poprzez file juz wyswietla się ok.
kodowanie pliku jak i skryptów utf-8
zacząłem pisać własny parser, ale napotkałem problem, jezeli w lini jest wiecej niż jeden string oddzielany jakimiś cudzysłowiami albo w stringu znajdują się zdefiniowane delimitery, oto przykłady problematycznych sctingów, może ktoś da radę pomoc, lub ma już gotowe rozwiązanie?
$string = 'Imię,ąęśćźżłóĄĘŚĆŹŻŁÓ,"jakiś, string i \"cos escapowanego\"",jan@kowalski.pl Январь,Ковальский,"jakis inny string, i cos jeszcze",janek@kowalski.pl'; function parse_csv($file,$delimiter=',',$enclosure='"') { $patt_d = $delimiter == ' ' ? 's' : $delimiter; { $tmp[] = $out; } return $tmp; }
Nie wiem jak napisać odpowiedniego regespa, żeby posortował mi wszystko tak jak powinien.