파일 헬퍼

파일 헬퍼 파일에는 파일 작업을 도와주는 함수가 포함되어 있습니다.

헬퍼 로드

이 헬퍼는 다음 코드를 사용하여 로드합니다:

$this->load->helper('file');

사용 가능한 함수

사용 가능한 함수는 다음과 같습니다:

write_file($path, $data[, $mode = 'wb'])
매개변수:
  • $path (string) – 파일 경로

  • $data (string) – 파일에 쓸 데이터

  • $mode (string) – fopen() 모드

반환:

쓰기 성공 시 TRUE, 오류 시 FALSE

반환 형식:

bool

경로에 지정된 파일에 데이터를 씁니다. 파일이 존재하지 않으면 함수가 생성합니다.

예시:

$data = 'Some file data';
if ( ! write_file('./path/to/file.php', $data))
{
        echo 'Unable to write the file';
}
else
{
        echo 'File written!';
}

선택적으로 세 번째 매개변수를 통해 쓰기 모드를 설정할 수 있습니다:

write_file('./path/to/file.php', $data, 'r+');

기본 모드는 ‘wb’입니다. 모드 옵션은 PHP 사용자 가이드를 참조하세요.

참고

이 함수가 파일에 데이터를 쓰려면 파일이 쓰기 가능하도록 권한이 설정되어 있어야 합니다. 파일이 아직 존재하지 않는 경우 파일을 포함하는 디렉터리가 쓰기 가능해야 합니다.

참고

경로는 메인 사이트 index.php 파일에 상대적이며, 컨트롤러나 뷰 파일에 상대적이지 않습니다. CodeIgniter는 프론트 컨트롤러를 사용하므로 경로는 항상 메인 사이트 인덱스에 상대적입니다.

참고

이 함수는 파일에 쓰는 동안 파일에 대한 배타적 잠금을 획득합니다.

delete_files($path[, $del_dir = FALSE[, $htdocs = FALSE]])
매개변수:
  • $path (string) – 디렉터리 경로

  • $del_dir (bool) – 디렉터리도 삭제할지 여부

  • $htdocs (bool) – .htaccess 및 인덱스 페이지 파일 삭제를 건너뛸지 여부

반환:

성공 시 TRUE, 오류 시 FALSE

반환 형식:

bool

제공된 경로에 포함된 모든 파일을 삭제합니다.

예시:

delete_files('./path/to/directory/');

두 번째 매개변수가 TRUE로 설정된 경우 제공된 루트 경로 안에 포함된 모든 디렉터리도 삭제됩니다.

예시:

delete_files('./path/to/directory/', TRUE);

참고

파일은 시스템에 의해 쓰기 가능하거나 소유되어야 삭제할 수 있습니다.

get_filenames($source_dir[, $include_path = FALSE])
매개변수:
  • $source_dir (string) – 디렉터리 경로

  • $include_path (bool) – 파일 이름의 일부로 경로를 포함할지 여부

반환:

파일 이름 배열

반환 형식:

array

서버 경로를 입력으로 받아 그 안에 포함된 모든 파일의 이름이 포함된 배열을 반환합니다. 두 번째 매개변수를 TRUE로 설정하여 파일 이름에 파일 경로를 선택적으로 추가할 수 있습니다.

예시:

$controllers = get_filenames(APPPATH.'controllers/');
get_dir_file_info($source_dir, $top_level_only)
매개변수:
  • $source_dir (string) – 디렉터리 경로

  • $top_level_only (bool) – 지정된 디렉터리만 볼지 여부 (하위 디렉터리 제외)

반환:

제공된 디렉터리 내용에 대한 정보가 포함된 배열

반환 형식:

array

지정된 디렉터리를 읽고 파일 이름, 파일 크기, 날짜 및 권한이 포함된 배열을 만듭니다. 지정된 경로 내에 포함된 하위 폴더는 두 번째 매개변수를 FALSE로 보내서 강제하는 경우에만 읽힙니다. 이는 집약적인 작업일 수 있습니다.

예시:

$models_info = get_dir_file_info(APPPATH.'models/');
get_file_info($file[, $returned_values = array('name', 'server_path', 'size', 'date')])
매개변수:
  • $file (string) – 파일 경로

  • $returned_values (array) – 반환할 정보 타입

반환:

지정된 파일에 대한 정보가 포함된 배열 또는 실패 시 FALSE

반환 형식:

array

파일과 경로를 주면 파일의 이름, 경로, 크기수정 날짜 정보 속성을 (선택적으로) 반환합니다. 두 번째 매개변수를 사용하면 반환할 정보를 명시적으로 선언할 수 있습니다.

유효한 $returned_values 옵션: name, size, date, readable, writeable, executable, fileperms.

get_mime_by_extension($filename)
매개변수:
  • $filename (string) – 파일 이름

반환:

MIME 타입 문자열 또는 실패 시 FALSE

반환 형식:

string

config/mimes.php를 기반으로 파일 이름 확장자를 MIME 타입으로 변환합니다. 타입을 결정하거나 MIME 설정 파일을 읽을 수 없으면 FALSE를 반환합니다.

$file = 'somefile.png';
echo $file.' is has a mime type of '.get_mime_by_extension($file);

참고

이것은 파일 MIME 타입을 결정하는 정확한 방법이 아니며, 편의를 위해서만 제공됩니다. 보안 목적으로 사용해서는 안 됩니다.

symbolic_permissions($perms)
매개변수:
  • $perms (int) – 권한

반환:

기호 권한 문자열

반환 형식:

string

숫자 권한(fileperms()가 반환하는 것과 같은)을 받아 파일 권한의 표준 기호 표기법을 반환합니다.

echo symbolic_permissions(fileperms('./index.php'));  // -rw-r--r--
octal_permissions($perms)
매개변수:
  • $perms (int) – 권한

반환:

8진수 권한 문자열

반환 형식:

string

숫자 권한(fileperms()가 반환하는 것과 같은)을 받아 파일 권한의 세 자리 8진수 표기법을 반환합니다.

echo octal_permissions(fileperms('./index.php')); // 644