파일시스템 함수 목록
PHP Manual

file

(PHP 4, PHP 5)

fileReads entire file into an array

설명

array file ( string $filename [, int $flags= 0 [, resource $context ]] )

Reads an entire file into an array.

Note: You can use file_get_contents() to return the contents of a file as a string.

인수

filename

Path to the file.

Tip

fopen 래퍼를 활성화하면, 파일명으로 URL을 사용할 수 있습니다. 파일 이름을 지정하는 방법은 fopen()을, 지원하는 URL 프로토콜 목록은 지원 프로토콜/래퍼 목록를 참고하십시오.

flags

The optional parameter flags can be one, or more, of the following constants:

FILE_USE_INCLUDE_PATH
Search for the file in the include_path.
FILE_IGNORE_NEW_LINES
Do not add newline at the end of each array element
FILE_SKIP_EMPTY_LINES
Skip empty lines
FILE_TEXT
The content is returned in UTF-8 encoding. You can specify a different encoding by creating a custom context. This flag cannot be used with FILE_BINARY.
FILE_BINARY
The content is read as binary data. This is the default setting and cannot be used with FILE_TEXT.

context

A context resource created with the stream_context_create() function.

Note: Context 지원은 PHP 5.0.0에서 추가되었습니다. contexts에 관한 자세한 설명은 Stream 함수 목록을 참고하십시오.

반환값

Returns the file in an array. Each element of the array corresponds to a line in the file, with the newline still attached. Upon failure, file() returns FALSE.

Note: Each line in the resulting array will include the line ending, unless FILE_IGNORE_NEW_LINES is used, so you still need to use rtrim() if you do not want the line ending present.

Note: PHP가 매킨토시 컴퓨터에서 파일을 읽거나 작성할 때 행의 끝을 판단하지 못하면, auto_detect_line_endings 실행 옵션을 활성화 함으로써 문제가 해결될 수 있습니다.

변경점

버전 설명
6.0.0 Added support for the FILE_TEXT and FILE_BINARY flags.

Note: For forward compatibility, these constants are available as of PHP 5.2.7

5.0.0 The context parameter was added
5.0.0 Prior to PHP 5.0.0 the flags parameter only covered include_path and was enabled with 1
4.3.0 file() became binary safe

예제

Example #1 file() example

<?php
// Get a file into an array.  In this example we'll go through HTTP to get
// the HTML source of a URL.
$lines file('http://www.example.com/');

// Loop through our array, show HTML source as HTML source; and line numbers too.
foreach ($lines as $line_num => $line) {
    echo 
"Line #<b>{$line_num}</b> : " htmlspecialchars($line) . "<br />\n";
}

// Another example, let's get a web page into a string.  See also file_get_contents().
$html implode(''file('http://www.example.com/'));

// Using the optional flags parameter since PHP 5
$trimmed file('somefile.txt'FILE_IGNORE_NEW_LINES FILE_SKIP_EMPTY_LINES);
?>

주의

Warning

SSL을 사용할 때, 마이크로소프트 IIS는 close_notify 식별자를 보내지 않은채 접속을 종료하는 프로토콜 오류가 있습니다. PHP는 데이터의 마지막에 도달했을때, 이를 "SSL: Fatal Protocol Error"로 보고합니다. 이를 처리하기 위해서는 error_reporting 레벨에 경고를 포함하지 않도록 해야합니다. PHP 4.3.7 이후는 https:// 래퍼를 통해 스트림을 열 때, 문제가 있는 IIS 서버 소프트웨어를 검출하여 경고를 하지 않습니다. ssl:// 소켓을 만들기 위해 fsockopen()을 사용한다면, 경고를 직접 검출하여 없애야 합니다.

참고


파일시스템 함수 목록
PHP Manual