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 resource variable, string $writing string [, int length])

注: fwrite のエイリアス関数は fputs

us です最後のクラスで r モードを試しましたが、これは読み取り時にのみ使用されました。 次に、fopen で fwrite と w を使用して書き込みモードでファイルを書き込みます。

機能を見てみましょう:

書き込みモードで開き、ファイルポインタをファイルヘッダーにポイントし、ファイルサイズをゼロに切り詰めます。ファイルが存在しない場合は、ファイルの作成が試行されます。

注: 次の実験では、新しい 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モードの違い

以下の同じコードをaモードに変更しました。

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

Web ページを開いてこのコードを実行すると、次のことがわかります: 更新するたびに、ファイルに余分な段落が追加されます
: 大学で迷っているなら、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. change $filename 別のファイル名に変更するだけです。しかし、再度更新すると、またエラーが報告されました

3. x+は拡張されたxモードです。読書時にも使えます。


学び続ける
||
<?php $data = "我是一个兵,来自老百姓"; $numbytes = file_put_contents('binggege.txt', $data); if($numbytes){ echo '写入成功,我们读取看看结果试试:'; echo file_get_contents('binggege.txt'); }else{ echo '写入失败或者没有权限,注意检查'; } ?>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜