>  기사  >  백엔드 개발  >  PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)

PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)

青灯夜游
青灯夜游원래의
2019-02-13 10:31:575120검색

PHP에서는 fgetcsv() 함수를 사용하여 CSV 파일을 구문 분석할 수 있으며, 이는 주어진 리소스의 CSV 필드를 자동으로 구문 분석할 수 있습니다. 다음 기사에서는 PHP를 사용하여 CSV 파일을 처리하는 방법에 대해 자세히 소개합니다. 도움이 되기를 바랍니다. [동영상 튜토리얼 추천 : PHP 튜토리얼]

PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)

CSV 파일이란?

CSV 파일은 기본적으로 특정 형식, 즉 일반적으로 스프레드시트나 데이터베이스 소프트웨어에서 사용되는 데이터를 저장하는 데 사용되는 일반 텍스트 파일 형식을 따르는 텍스트 파일입니다. CSV 파일에서 모든 값은 쉼표로 구분되며(따라서 약어 뒤에 숨은 의미: 쉼표로 구분된 값) 행은 줄바꿈으로 구분됩니다.

요약: CSV 파일은 쉼표, 데이터 및 줄 바꿈으로 구성됩니다. 줄 바꿈은 행을 구분하고 쉼표는 값/열을 구분합니다.

CSV 파일의 예 이름은 example.csv입니다.

Ted,USA,21
Lisa,UK,23
Michael,USA,20
Louise,Ireland,30

보시다시피 각 행은 쉼표로 구분됩니다. 첫 번째 열은 사람의 이름이고 두 번째 열은 사람의 국가입니다. 열은 그 사람의 나이이고, 각 사람은 줄 바꿈으로 구분됩니다.

PHP를 사용하여 CSV 파일을 처리하는 방법은 무엇입니까?

php는 fgetcsv() 함수를 사용하여 CSV 파일을 구문 분석할 수 있습니다. 이 함수는 열린 파일의 한 줄을 구문 분석하고 CSV 필드를 확인합니다.

구문은 다음과 같습니다:

fgetcsv("filename.csv", 1000, ",");

filename.csv: CSV 파일의 이름입니다.

1000: 가장 긴 줄의 길이를 나타냅니다.

",": 선택적 구분 기호 매개변수를 나타냅니다. 물론 기본값은 쉼표(,)입니다.

fgetcsv() 함수를 사용하려면 먼저 fopen() 함수를 사용하여 읽을 파일을 연 다음 fclose() 함수를 사용하여 파일을 닫아 코드를 종료해야 합니다. 그 사이에 루프를 사용하여 각 CSV 행을 개별적으로 구문 분석합니다.

다음은 처리 방법에 대한 간략한 소개입니다.

1. 파일을 열고 읽으려면 fopen() 함수를 사용하세요.

$h = fopen("filename.csv", "r");

파일을 열고 읽으려면 "r" 모드를 사용하세요. $h 변수는 데이터 처리 파일에서 저장됩니다.

2. fgetcsv() 함수를 사용하여 CSV 파일의 데이터를 한 줄씩 읽고, 각 데이터 줄을 $data라는 배열에 별도로 저장합니다.

$data = fgetcsv($h, 1000, ",");

모든 줄을 읽으려면 while 루프를 사용해야 합니다:

while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
{
  // 读取数据
}

3. 파일을 닫아야 합니다.

fclose($h);

위의 3단계를 결합합니다:

<?php
// 打开文件并阅读
if (($h = fopen("example.csv", "r")) !== FALSE) 
{
  // 将每行数据都转换为本地$data变量并储存
  while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
  {
   //输出每行数据
    var_dump($data);
  }
  // 关闭文件
  fclose($h);
}
?>

출력:

PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)

코드 예: CSV 파일 변환을 PHP 다차원 배열로 변환

다음 코드는 CSV 파일의 단일 행에서 변환된 배열로 구성된 각 항목이 있는 다차원 배열($the_big_array)을 생성합니다.

<?php 
$filename = &#39;example.csv&#39;;
// 用于保存所有数据的多维(嵌套)数组
$the_big_array = []; 
// 打开文件并阅读
if (($h = fopen("{$filename}", "r")) !== FALSE) 
{
  // 文件中的每一行数据都被转换为我们调用的单个数组$data
  // 数组的每个元素以逗号分隔
  while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
  {
    // 每个单独的数组都被存入到嵌套的数组中
    $the_big_array[] = $data;
  }
  // 关闭文件
  fclose($h);
}
// 以可读格式显示代码
echo "<pre class="brush:php;toolbar:false">";
var_dump($the_big_array);
echo "
"; ?>

출력:

PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)

위는 이 기사의 전체 내용입니다. 모든 사람의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 PHP를 사용하여 CSV 파일을 처리하는 방법(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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