PHP에는 파일을 처리하는 방법에는 여러 가지가 있습니다. FOPEN 은 가장 일반적으로 사용되는 파일 개방 기능으로 읽기 및 쓰기 작업을 위해 일반 파일을 열는 데 사용됩니다. 압축 패키지로 파일을 처리 할 때는 Zip_entry_Read 와 같은 일반적으로 Zip_Read 및 관련 기능이 사용됩니다. 이 기사는 두 가지의 차이점을 자세히 비교하고 FOPEN 대신 어떤 상황에서 사용 되어야하는지 논의합니다.
Fopen은 PHP 작동 파일의 기본 기능입니다. 로컬 파일 또는 네트워크 파일 (예 : http://m66.net/path/toto/file)을 엽니 다. 사용량은 매우 간단하고 일반 파일에 적합합니다.
<?php
$handle = fopen("http://m66.net/example.txt", "r");
if ($handle) {
while (($line = fgets($handle)) !== false) {
echo $line;
}
fclose($handle);
} else {
echo "파일을 열 수 없습니다";
}
?>
위의 코드는 일반 텍스트 파일을 열고 루프를 통해 컨텐츠 라인을 읽고 출력합니다.
Zip_Read 는 PHP의 Zip Extension에서 제공하는 기능으로 Zip 압축 패키지의 파일 항목을 읽습니다. Zip_Open은 압축 패키지를 열고 Zip_Read는 압축 패키지의 파일을 하나씩 통과하며 Zip_entry_Read는 특정 파일의 내용을 읽는 데 사용됩니다.
샘플 코드 :
<?php
$zip = zip_open("/path/to/archive.zip");
if ($zip) {
while ($entry = zip_read($zip)) {
$name = zip_entry_name($entry);
echo "파일 이름: $name\n";
if (zip_entry_open($zip, $entry, "r")) {
$content = "";
while ($data = zip_entry_read($entry, 1024)) {
$content .= $data;
}
echo $content;
zip_entry_close($entry);
}
}
zip_close($zip);
}
?>
이 예에서는 zip 압축 패키지를 열고 압축 패키지의 모든 파일을 반복하고 각 파일의 내용을 읽습니다.
특성 | 포펜 | zip_entry_read |
---|---|---|
해당 객체 | 일반 파일 (로컬 또는 네트워크 파일) | 압축 패키지의 파일 |
파일 액세스 방법 | 파일 경로 또는 URL에 직접 액세스합니다 | 압축 패키지를 먼저 열고 압축 패키지에서 파일을 읽으십시오. |
파일 콘텐츠의 감압 | 없음 (압축되지 않은 파일 또는 네트워크 리소스 만 처리) | 자동으로 압축 압축, 압축 패키지 파일의 내용을 읽으십시오. |
지원 파일 프로토콜 | 로컬 파일 및 부분 URL 프로토콜을 지원합니다 | zip 내부 파일 만 지원합니다 |
파일은 zip 패키지 <br>로 압축됩니다 파일이 압축 패키지의 일부인 경우 fopen을 직접 사용하여 압축 패키지 내부의 파일을 읽을 수 없습니다 ( 유사한 zip : // 프로토콜을 통해 일부 환경에서 제한되어 있더라도).
압축 파일 컨텐츠를 처리해야합니다
Zip_entry_Read는 수동으로 압축 해제하지 않고 파일 내용을 자동으로 압축 해제하는 데 도움이되며 편리하고 빠릅니다.
디스크 공간을 저장하거나 임시 파일을 줄입니다 <br> 압축 패키지에서 파일을 읽을 때는 먼저 임시 디렉토리로 압축 해제하지 않고 zip_entry_read를 사용하여 직접 읽을 수 있습니다.
큰 파일 청크 독서를 처리합니다
Zip_entry_Read는 대형 파일을 처리 할 때 메모리를 저장하는 데 편리한 데이터의 청크 읽기를 지원합니다.
Fopen 은 일반 파일을 열고 여러 프로토콜을 지원하며 간단하고 직접 작동합니다.
Zip_Read 및 Zip_entry_read는 압축 파일의 내용을 쉽게 읽을 수있는 zip 압축 패키지 전용입니다.
파일이 zip 압축 패키지에 있으면 zip_entry_read를 사용해야합니다. 그렇지 않으면 Fopen 에 직접 액세스 할 수 없습니다.
시나리오를 사용하여 사용할 방법을 결정하십시오. 압축 패키지의 내용을 조작 할 때 Zip_entry_read가 첫 번째 선택입니다.
관련 태그:
fopen