ISO-8859-1로 인코딩 된 .csv 파일의 일부 데이터를 읽고 PostgreSQL 데이터베이스는 UTF-8로 인코딩되어 있으며, 처리중인 파일의 행에 따라 두 개의 오류가 발생합니다.PHP fgetcsv() 함수를 사용하여 데이터를 관리하면서 "정의되지 않은 오프셋"및 "UTF8을 인코딩 할 때 잘못된 바이트 시퀀스"오류가 발생했습니다.
내가 fgetcsv을 사용하여 파일에서 데이터를 받고 있어요() 함수 :
$foo = my_function($file_line[$index]);
:
while (($line = fgetcsv($handle,0,';','"')) !== false) {
오류가 나는이 같은 함수를 호출 한 줄에 "정의되지 않은 오프셋"된다 PostgreSQL 테이블에 데이터를 삽입하려고하면 "UTF8 인코딩을위한 잘못된 바이트 시퀀스"오류가 발생합니다.
파일에는 날짜 필드, 숫자 필드 및 특수 문자와 악센트가있는 여러 줄 텍스트 필드가 포함 된 복잡한 데이터가 들어 있으며 모든 줄에는 비어있는 경우에도 모든 필드가 있습니다.
나는이 문제를 해결하기 위해 시간을 보냈지 만 비슷한 문제가있는 다른 사람들을 돕기 위해 어떻게 해결했는지 게시하고 있습니다. 나는 그것이 어딘가에 도움이되기를 바랍니다. –