PHP Legacy

올드하지만 여전히 강력한 PHP! 레거시 코드 최적화, 보안 패치 등에 대한 정보를 나누는 공간입니다.

2025.02.23 18:16

PHP 텍스트 파일을 배열로 변환하기

  • 나우호스팅 19일 전 2025.02.23 18:16
  • 20
    0

function readFileToArray($filePath) {
    if (!file_exists($filePath)) {
        throw new Exception("파일이 존재하지 않습니다: $filePath");
    }

    $lines = [];
    $handle = fopen($filePath, "r");
    
    if (!$handle) {
        throw new Exception("파일을 열 수 없습니다: $filePath");
    }

    while (($line = fgets($handle)) !== false) {
        $lines[] = trim($line); // 한 줄씩 배열에 추가 (공백 제거)
    }

    fclose($handle);
    return $lines;
}



PHP Legacy Code: `readFileToArray` 함수


# 함수 설명


`readFileToArray` 함수는 주어진 파일 경로에서 파일을 읽어 배열로 반환하는 함수입니다. 파일이 존재하지 않거나 파일을 열 수 없을 때 예외를 던집니다.

# 함수 소스코드


#hostingforum.kr
php

function readFileToArray($filePath) {

    // 1. 파일 존재 여부 확인

    if (!file_exists($filePath)) {

        // 파일이 존재하지 않으면 예외 던짐

        throw new Exception("파일이 존재하지 않습니다: $filePath");

    }



    // 2. 파일 열기

    $lines = [];

    $handle = fopen($filePath, "r");

    

    // 파일 열기 실패 시 예외 던짐

    if (!$handle) {

        throw new Exception("파일을 열 수 없습니다: $filePath");

    }



    // 3. 파일 읽기

    while (($line = fgets($handle)) !== false) {

        // 한 줄씩 배열에 추가 (공백 제거)

        $lines[] = trim($line);

    }



    // 4. 파일 닫기

    fclose($handle);

    return $lines;

}



# 함수 동작 과정


1. 파일 존재 여부 확인: `file_exists` 함수를 사용하여 주어진 파일 경로에 파일이 존재하는지 확인합니다. 존재하지 않으면 예외를 던집니다.
2. 파일 열기: `fopen` 함수를 사용하여 파일을 읽기 모드 (`\"r\"`로 열어 파일을 열어 파일 핸들을 반환합니다. 열기 실패 시 예외를 던집니다.
3. 파일 읽기: `fgets` 함수를 사용하여 파일을 한 줄씩 읽어 배열에 추가합니다. 읽기 실패 시 `fgets` 함수는 `false`를 반환합니다.
4. 파일 닫기: `fclose` 함수를 사용하여 파일 핸들을 닫습니다.

# 예제 사용


#hostingforum.kr
php

// 예제 파일 경로

$filePath = "example.txt";



// readFileToArray 함수 호출

$lines = readFileToArray($filePath);



// 결과 출력

foreach ($lines as $line) {

    echo $line . "n";

}



이 예제에서는 `example.txt` 파일을 읽어 배열로 반환한 후, 배열의 각 요소를 출력합니다.



이 게시물에 포함된 라이브러리

[PHP] trim - 문자열의 시작과 끝에서 공백(또는 다른 문자)을 제거합니다.
[PHP] fopen - 파일이나 URL을 엽니다
[PHP] file_exists - 파일이나 디렉토리가 존재하는지 확인합니다.
[PHP] file - 전체 파일을 배열로 읽습니다.
[PHP] fgets - 파일 포인터에서 줄을 가져옵니다
[PHP] fclose - 열려있는 파일 포인터를 닫습니다.
[PHP] echo - 하나 이상의 문자열을 출력합니다.
[PHP] each - 배열에서 현재 키와 값 쌍을 반환하고 배열 커서를 이동합니다.
[PHP] dl - 런타임에 PHP 확장을 로드합니다.
[PHP] Array - 배열 생성
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • PHP Legacy 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 6건 / 1 페이지

검색

게시물 검색