2-파일 내용 생성 및 수정

file_put_contents 파일에 쓰기

먼저 파일을 작성하는 첫 번째 방법을 알아보겠습니다.

int file_put_contents( string $ file Path, string $write data])

기능: 지정된 파일에 문자열을 쓰고, 파일이 없으면 생성합니다. 반환되는 것은 쓴 바이트의 길이입니다

<?php
    $data = "我是一个兵,来自老百姓";
     $numbytes = file_put_contents('binggege.txt', $data);
     if($numbytes){
 
        echo '写入成功,我们读取看看结果试试:';
 
        echo file_get_contents('binggege.txt');
 
    }else{
        echo '写入失败或者没有权限,注意检查';
    }
?>

파일 쓰기가 매우 간단하다는 것을 알았습니다. 이 함수의 형식에 따라 파일을 지정하고 문자열 데이터를 씁니다.

fwrite는 fopen과 협력하여 쓰기 작업을 수행합니다

int fwrite (resource $ file 리소스 변수, string $에 작성된 문자열 [, int Length] )

참고: fwrite의 별칭 함수는 fputs

저번 수업에서 r 모드를 시도했는데, 읽을 때만 사용했습니다. 다음으로 fwrite와 fopen w, write를 사용합니다. 파일 쓰기를 수행하는 모드입니다.

기능을 살펴보겠습니다.

쓰기 모드로 열고 파일 포인터를 파일 헤더로 가리키고 파일 크기를 0으로 자릅니다. 파일이 존재하지 않으면 파일 생성을 시도합니다.

참고: 다음 실험에서는 새 test.txt 파일을 만들고 여기에 콘텐츠를 쓸 수 있습니다. 그런 다음 test.txt를 삭제해 보세요. 어떤 팁이 있는지 확인해보세요.

<?php
    $filename = 'test.txt';
    $fp= fopen($filename, "w");
    $len = fwrite($fp, '我是一只来自南方的狼,一直在寻找心中的花姑娘');
    fclose($fp);
    print $len .'字节被写入了\n";
?>

요약:
1. 파일이 새 파일인지 여부에 관계없이 열리고 다시 작성됩니다.
2. 원본 파일 내용을 덮어쓰게 됩니다.
3. 파일이 새로 만들어진 경우 존재하지 않으면 생성됩니다

그런 다음 다음 모드의 차이점을 비교해 보겠습니다.



QQ截图20161009102436.png


실험을 통해 증명해보자:

<?php
    $filename = 'test.txt';
    $fp= fopen($filename, "r+");
    $len = fwrite($fp, '我是一只来自南方的狼,一直在寻找心中的花姑娘');
    fclose($fp);
    print $len .'字节被写入了\n';
?>

실험 도중 r 뒤의 + 기호를 제거할 수 있습니다.

실험을 통해 r 모드를 사용하면 파일 저장 시 데이터 쓰기가 가능하다는 것을 확인했습니다. r만 사용하면 쓰기가 실패합니다.

a 모드와 w 모드의 차이점

아래 같은 코드를 모드로 변경했습니다.

<?php
    $filename = 'test.txt';
    $fp= fopen($filename, "a");
    $len = fwrite($fp,'读大学迷茫了,PHP学院PHP给你希望');
    echo  $len .'字节被写入了\n';
?>

웹페이지를 열고 이 코드를 실행하면 다음을 확인할 수 있습니다. 새로 고칠 때마다 파일에 추가 단락이 생깁니다
: 대학에서 혼란스러우면 PHP가 희망을 줍니다.

요약:



QQ截图20161009102447.png


참고: a+는 향상된 추가 기능입니다. 읽을 수 있을 때에도 사용할 수 있습니다.

x 모드와 w 모드의 차이점

이 코드를 다시 시도하여 x 모드로 변경해 보겠습니다.

<?php
    $filename = 'test.txt';
    $fp= fopen($filename, "x");
    $len = fwrite($fp,'读大学迷茫了,PHP学院PHP给你希望');
    echo  $len .'字节被写入了\n';
?>

찾을 내용은 다음과 같습니다.

1 .파일이 존재하면 오류가 발생합니다

2.$filename을 다른 파일 이름으로 변경하면 괜찮습니다. 그런데 다시 새로고침을 하면 오류가 보고됩니다

3.x+는 강화된 x 모드입니다. 읽을 때에도 사용할 수 있습니다.


지속적인 학습
||
<?php $data = "我是一个兵,来自老百姓"; $numbytes = file_put_contents('binggege.txt', $data); if($numbytes){ echo '写入成功,我们读取看看结果试试:'; echo file_get_contents('binggege.txt'); }else{ echo '写入失败或者没有权限,注意检查'; } ?>
  • 코스 추천
  • 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~