>백엔드 개발 >PHP 튜토리얼 >fgetcsv를 사용하여 PHP에서 쉼표가 포함된 CSV 파일을 구문 분석하는 방법은 무엇입니까?

fgetcsv를 사용하여 PHP에서 쉼표가 포함된 CSV 파일을 구문 분석하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-24 14:31:44853검색

How to Parse CSV Files with Embedded Commas in PHP Using fgetcsv?

fgetcsv를 사용하여 PHP로 CSV 파일에서 배열 생성

질문:

사용자가 원하는 것 fgetcsv 함수를 사용하여 CSV 파일에서 배열을 만듭니다. 그러나 필드에 주소와 같은 여러 쉼표가 포함되어 있으면 현재 코드가 제대로 작동하지 않습니다. 또한 str_getcsv에 대한 액세스 권한도 없습니다. 솔루션을 제공할 수 있습니까?

답변:

fgetcsv를 사용하여 CSV 파일 구문 분석

제목에서 언급했듯이, fgetcsv는 CSV 파일을 구문 분석하는 데 탁월한 옵션입니다. 이는 각 줄을 요소 배열로 분할하는 효율적인 방법을 제공합니다.

다음은 fgetcsv를 활용하는 코드 조각입니다.

$file = fopen('myCSVFile.csv', 'r');
while (($line = fgetcsv($file)) !== FALSE) {
  print_r($line);
}
fclose($file);

이 코드의 내용:

  • fopen(): 읽기 위해 CSV 파일을 열고 파일에 할당합니다. handler.
  • while 루프: fgetcsv()의 FALSE 반환에 따라 결정되는 파일 끝에 도달할 때까지 파일의 각 줄을 반복합니다.
  • fgetcsv(): 현재 항목을 구문 분석합니다. 요소 배열에 한 줄을 추가한 다음 인쇄합니다.
  • fclose(): 파일을 닫습니다. handler.

포함된 쉼표 처리

쉼표가 포함된 필드를 처리하려면 CSV 파일의 형식이 적절한 구분 기호나 따옴표로 올바르게 지정되었는지 확인해야 합니다. . 필드를 큰따옴표로 묶으면 fgetcsv는 쉼표가 포함된 요소를 올바르게 식별하고 구분할 수 있습니다.

예를 들어 다음 CSV 파일 형식은 올바르게 작동합니다.

Scott L. Aranda,"123 Main Street, Bethesda, Maryland 20816",Single
Todd D. Smith,"987 Elm Street, Alexandria, Virginia 22301",Single
Edward M. Grass,"123 Main Street, Bethesda, Maryland 20816",Married
Aaron G. Frantz,"987 Elm Street, Alexandria, Virginia 22301",Married
Ryan V. Turner,"123 Main Street, Bethesda, Maryland 20816",Single

위 내용은 fgetcsv를 사용하여 PHP에서 쉼표가 포함된 CSV 파일을 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.