PHP 개발에서 파일 컨텐츠를 읽는 것은 로컬 텍스트 파일 또는 원격 자원을 읽는 것도 매우 일반적인 작업입니다. PHP는 다양한 읽기 방법을 제공하며, 가장 일반적으로 사용되는 것은 File_get_Contents 및 Fread 입니다. 이 기사는이 두 가지 방법을 자세히 소개하고 파일 읽기 기술을 신속하게 마스터하는 데 도움이되는 실용적인 코드 예제를 제공합니다.
file_get_contents는 전체 파일 컨텐츠를 읽는 데 적합한 간단하고 직접 파일 읽기 기능입니다. 파일의 모든 내용을 한 번에 메모리에로드하고 문자열로 리턴합니다.
$file_contents = file_get_contents('file.txt');
echo $file_contents;
위 코드에서 File_get_Contents는 file.txt 라는 파일을 읽고 해당 내용을 출력합니다.
로컬 파일 외에도 File_Get_Contents를 사용하여 원격 파일을 읽을 수도 있습니다. 원격 파일의 URL을 전달하십시오.
$file_contents = file_get_contents('http://www.example.com/file.txt');
echo $file_contents;
이 예에서는 원격 서버에서 호스팅되는 텍스트 파일이 읽히고 내용은 출력됩니다.
file_get_contents는 그림과 같은 이진 파일 내용을 읽는 데 사용될 수도 있습니다. 적절한 매개 변수를 설정하십시오.
$file_contents = file_get_contents('image.png', true);
echo $file_contents;
두 번째 매개 변수를 설정하면 이진 스트림 읽기와 같은 특정 모드에서 파일을 읽도록 함수를 알 수 있습니다.
File_get_Contents 와 비교할 때 Fread는 더 높은 유연성을 제공합니다. 특히 세그먼트 된 판독 값이 필요한 대형 파일 또는 상황을 처리하는 데 적합합니다. 스트림 기반 읽기 방법입니다.
$file_handle = fopen('file.txt', 'r');
$file_size = filesize('file.txt');
$file_contents = fread($file_handle, $file_size);
fclose($file_handle);
echo $file_contents;
이 예에서 Fopen을 사용하여 파일을 열고 Filesize를 열어 파일 크기를 가져 오고 컨텐츠를 읽고 파일 핸들을 닫습니다.
파일 컨텐츠를 라인별로 만 처리 해야하는 경우 FGES가 이상적이며 Fread 와 함께 라인 읽기 로직을 구현할 수 있습니다.
$file_handle = fopen('file.txt', 'r');
while (!feof($file_handle)) {
$line = fgets($file_handle);
echo $line;
}
fclose($file_handle);
위의 코드는 루핑을 통해 파일 컨텐츠 라인을 라인별로 읽습니다. 로그 파일 또는 큰 텍스트의 라인 수준 처리에 적합합니다.
PHP는 파일을 읽는 다양한 방법을 제공합니다. File_get_Contents는 완전한 파일 컨텐츠를 신속하게 읽는 데 적합한 파일을 제공하는 반면, 큰 파일을 처리하거나 주문형 읽기가 필요할 때 Fread는 더 잘 수행됩니다. 개발자는 프로그램의 성능과 유지 가능성을 향상시키기 위해 다양한 시나리오에 따라 적절한 읽기 방법을 유연하게 선택해야합니다.