파일 읽기

readfile은 파일을 읽습니다

그럼 어떻게 파일을 읽을 수 있을까요? 먼저 함수를 배워보겠습니다.

int readfile (string $filename)

기능: 파일 경로를 전달하고 파일을 출력합니다.

아래 코드에서는 파일 이름이나 지정된 파일 경로만 전달되면 파일을 읽습니다.

<?php
    //linux类的读了方式
    readfile("/home/paul/test.txt");
    //windows类的读取方式
    readfile("c:\boot.ini");
?>

참고: 위 코드의 Windows 슬래시는 슬래시이므로 일부 문자가 이스케이프될 수 있습니다. 따라서 글을 쓸 때 슬래시를 두 개 씁니다.

file_get_contents가 파일을 엽니다

위는 단순히 파일을 열고 직접 출력하는 것입니다. 파일을 연 후 변수에 할당할 수 있는 연산 방법이 있나요?

PHP는 확실히 이 방법을 제공합니다. 이 메소드는 PHP가 파일을 열고 내용을 반환하는 방법 중 하나입니다. 함수를 살펴보겠습니다.

string file_get_contents(string filename)

함수: 파일 또는 파일을 전달합니다. 이 파일을 여는 경로는 파일의 내용을 반환합니다. 파일의 내용은 문자열입니다.

<?php
 
    $filename = 'NoAlike.txt';
 
    $filestring = file_get_contents($filename);
    echo $filestring;
?>

위 코드는 파일을 열고 파일 내용을 출력합니다.

기존 지식을 바탕으로 코드를 확장해 보겠습니다. 이전 지식을 활용하세요.

rree

위에서는 앞서 배운 지식을 결합했습니다.

Fopen, fread 및 fclose 작업으로 파일 읽기

위의 file_get_contents 파일 열기 방법은 간단하고 조잡합니다. 다음

resource fopen(string $filename, string mode)

string fread(resource $operation 리소스, int 읽기 길이)

bool fclose(resource $operation 리소스)

위 기능을 통해 일반적인 리소스 종류별 동작 방법을 설명하겠습니다.

1. 리소스 열기

2. 관련 기능을 활용하여 동작

3. 리소스 닫기

fopen 함수 fopen 함수의 주요 매개변수는 두 가지입니다:

1. 파일을 여는 경로

2. 파일을 여는 경로

패턴의 반환 유형은 이전 기본 유형에서 언급한 리소스 유형을 처음 접한 것입니다.
리소스 유형에 따라 이 리소스를 작동하려면 다른 기능이 필요합니다. 모든 리소스는 열 때 닫혀야 합니다.

fread 함수 함수의 기능은 열려 있는 파일 리소스를 읽는 것입니다. 지정된 길이의 파일 리소스를 읽고 일부를 읽고 일부를 뒤로 이동합니다. 파일 끝까지.

fclose 함수 fclose 함수의 기능은 리소스를 닫는 것입니다. 리소스가 열리고 닫힙니다.

기능을 이해하고 나면 마지막 두 기능은 비교적 간단합니다. fopen 함수의 모드는 무엇인가요? fopen의 모드에 대해 알아보겠습니다.


QQ截图20161009101723.png


다음에는 r 모드만 배우겠습니다. 수업 마지막에는 글을 쓸 때 다른 여러 모드에 대해 이야기하겠습니다.

파일 쓰기를 잘 익히려면 먼저 파일을 읽는 방법을 알아야 합니다.

1.

<?php
    //假设我们有一个多行的文件叫NoAlike.txt,没有的话你可以新建一个这个文件
     $filename = 'NoAlike.txt';
 
 
    //打开这个文件,将文件内容赋值给$filestring
    $filestring = file_get_contents($filename);
 
    //因为每一行有一个回车即\n,我用\n来把这个字符串切割成数组
    $filearray = explode("\n", $filestring);
 
    //把切割成的数组,下标赋值给$key,值赋值给$val,每次循环将$key加1。
    while (list($key, $val) = each($filearray)) {
        ++$key;
        $val = trim($val);
 
        //用的单引号,单引号不解释变量进行了拼接而已
        print 'Line' . $key .':'.  $val.'<br />';
    }
?>

파일을 엽니다.

<?php
    //你可以创建一个NoAlike.txt,以只读模式打开
    $fp = fopen('NoAlike.txt', "r");
 
 
    //var_dump()操作一下$fp看看效果,输出的是不是只有类型提示的是resource
    var_dump($fp);
?>

3.

<?php
    $fp = fopen('NoAlike.txt', "r");
 
    //打开一个文件类型后,读取长度
    $contents = fread($handle, 1024);
?>

기타 참고 사항:


QQ截图20161009101707.png


사용 예:

<?php
    $fp = fopen($filename, 'r');
    $contents = fread($fp, 1024);
    fclose($fp);
    echo $contents;
?>

참고:
실험 효과는 육안으로 볼 수 없습니다. 이 기능만 기억해두세요.

Windows에서는 n을 rn으로 투명하게 변환할 수 있는 텍스트 변환 태그('t')를 제공합니다.
또는 'b'를 사용하여 바이너리 모드를 강제 실행하여 데이터가 변환되지 않도록 할 수 있습니다. 이러한 플래그를 사용하려면 모드 인수의 마지막 문자로 'b' 또는 't'를 사용하십시오.


지속적인 학습
||
<?php //假设我们有一个多行的文件叫NoAlike.txt,没有的话你可以新建一个这个文件 $filename = 'NoAlike.txt'; //打开这个文件,将文件内容赋值给$filestring $filestring = file_get_contents($filename); //因为每一行有一个回车即\n,我用\n来把这个字符串切割成数组 $filearray = explode("\n", $filestring); //把切割成的数组,下标赋值给$key,值赋值给$val,每次循环将$key加1。 while (list($key, $val) = each($filearray)) { ++$key; $val = trim($val); //用的单引号,单引号不解释变量进行了拼接而已 print 'Line' . $key .':'. $val.'<br />'; } ?>
  • 코스 추천
  • 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~