라이브러리

[PHP] SplFileObject::setCsvControl - CSV에 대한 구분 기호, 묶음 문자 및 이스케이프 문자 설정




PHP의 SplFileObject 클래스는 파일을 읽고 쓰기 위한 클래스입니다. CSV 파일을 읽고 쓰기 위해서는 SplFileObject 클래스를 사용할 수 있습니다. SplFileObject::setCsvControl 메서드는 CSV 파일을 읽고 쓰기 위한 제어 문자를 설정하는 메서드입니다.

SplFileObject::setCsvControl 메서드


SplFileObject::setCsvControl 메서드는 CSV 파일을 읽고 쓰기 위한 제어 문자를 설정하는 메서드입니다. 이 메서드는 다음 세 가지 파라미터를 받습니다.

- delimiter: 필드 사이의 구분 문자
- enclosure: 필드 내의 구분 문자
- escape: 필드 내의 구분 문자를 탈출하기 위한 문자

예제


다음 예제는 SplFileObject::setCsvControl 메서드를 사용하여 CSV 파일을 읽고 쓰는 방법을 보여줍니다.

#hostingforum.kr
php

// CSV 파일을 읽기 위한 SplFileObject 객체 생성

$file = new SplFileObject('example.csv', 'r');



// CSV 파일의 제어 문자를 설정

$file->setCsvControl("	", '"', '');



// CSV 파일을 읽어 필드 이름을 추출

$headers = array();

foreach ($file as $row) {

    $headers = array_merge($headers, explode("	", $row));

}

unset($file);



// CSV 파일을 쓰기 위한 SplFileObject 객체 생성

$file = new SplFileObject('example.csv', 'w');



// CSV 파일의 제어 문자를 설정

$file->setCsvControl("	", '"', '');



// CSV 파일에 데이터를 쓰기

$data = array(

    array('이름', '나이', '성별'),

    array('홍길동', 25, '남자'),

    array('이순신', 30, '남자'),

    array('김유신', 20, '남자'),

);



foreach ($data as $row) {

    $file->fputcsv($row);

}



결과


이 예제를 실행하면 example.csv 파일에 다음 데이터가 저장됩니다.

#hostingforum.kr


이름    나이    성별

홍길동    25    남자

이순신    30    남자

김유신    20    남자



참고


SplFileObject::setCsvControl 메서드는 CSV 파일을 읽고 쓰기 위한 제어 문자를 설정하는 메서드입니다. 이 메서드는 필드 사이의 구분 문자, 필드 내의 구분 문자, 필드 내의 구분 문자를 탈출하기 위한 문자를 설정할 수 있습니다. 이 메서드를 사용하여 CSV 파일을 읽고 쓰는 방법을 보여주었습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 142 페이지

검색

게시물 검색