php mencipta dan mengubah suai kandungan fail

Dalam bahagian sebelumnya, kami mengetahui bahawa membaca fail amat mudah untuk dikuasai. Dalam bahagian ini kami akan menerangkan penulisan kepada fail.

file_put_contents menulis ke fail


<🎜 🎜>Mari kita pelajari cara pertama untuk menulis fail:


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

Fungsi: Tulis rentetan pada fail yang ditentukan, dan buat fail itu jika ia tidak wujud. Apa yang dikembalikan ialah panjang bait bertulis

<?php
   $data = "在PHP中文网学好PHP,妹子票子不再话下!";

   $numbytes = file_put_contents('binggege.txt', $data);

   if($numbytes){

       echo '写入成功,我们读取看看结果试试:';

       echo file_get_contents('binggege.txt');

   }else{
       echo '写入失败或者没有权限,注意检查';
   }
?>

Kami mendapati bahawa menulis fail agak mudah. Mengikut format fungsi ini, nyatakan fail dan tulis data rentetan.

fwrite bekerjasama dengan fopen untuk melaksanakan operasi penulisan


int fwrite (sumber $fail pembolehubah sumber, rentetan $written string [, int length])

Nota: Fungsi alias fwrite ialah fputs

Kami mencuba mod r dalam kelas terakhir, yang hanya digunakan semasa membaca Seterusnya, kami menggunakan fwrite plus w in fopen untuk menulis fail dalam mod tulis.

Mari kita lihat ciri-ciri:

Buka dalam mod penulisan, halakan penuding fail ke pengepala fail dan potong saiz fail kepada sifar. Jika fail itu tidak wujud maka cuba menciptanya.

Nota: Dalam percubaan berikut, anda boleh cuba mencipta fail test.txt baharu dan menulis kandungan ke dalamnya. Kemudian, anda boleh cuba memadam test.txt. Lihat apa petua yang ada.

<?php
   $filename = 'test.txt';
   $fp= fopen($filename, "w");
   $len = fwrite($fp, '我是一只来自北方的狼,却在南方冻成了狗');
   fclose($fp);
   print $len .'字节被写入了\n';
?>

Ringkasan:

1 Tidak kira sama ada terdapat fail baru, fail akan dibuka dan ditulis semula
2 Kandungan fail asal akan ditimpa
3 tidak wujud, ia akan dibuat

Kemudian mari kita bandingkan perbezaan antara mod berikut:

Mari kita buktikan melalui percubaan:

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

Semasa percubaan, anda boleh mengalih keluar tanda + selepas r.

Melalui eksperimen, kami mendapati bahawa menggunakan mod r, data boleh ditulis apabila fail disimpan Jika hanya r digunakan, tulisan itu tidak berjaya.

Perbezaan antara mod dan mod w

Kod yang sama ada di bawah, kami menukarnya kepada mod.

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

Buka halaman web dan laksanakan kod ini, anda akan dapati: setiap kali anda memuat semula, akan ada perenggan tambahan dalam fail
: Jika anda keliru di kolej, belajar PHP di laman web PHP Cina akan memberi anda harapan.

Ringkasan:

模式总结
x每次写入会干掉原有文件的内容,文件不存在都会创建
a每次写入都会向文件的尾端追加内容

Nota: a+ ialah fungsi tambahan yang dipertingkatkan. Ia juga boleh digunakan apabila ia boleh dibaca.

Perbezaan antara mod x dan mod w

Mari cuba kod ini sekali lagi dan tukar kepada mod x:

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

Kita akan dapati:

1 .Apabila fail wujud, ralat akan dilaporkan

2. Jika anda menukar $filename kepada nama fail lain, ia tidak mengapa. Walau bagaimanapun, apabila memuat semula semula, ralat telah dilaporkan

3.x+ ialah mod x dipertingkatkan. Boleh juga digunakan semasa membaca.

Meneruskan pembelajaran
||
<?php $filename = 'test.txt'; $fp= fopen($filename, "x"); $len = fwrite($fp,'读大学迷茫了,PHP中文网学PHP给你希望'); echo $len .'字节被写入了\n'; ?>
  • Cadangan kursus
  • Muat turun perisian kursus