Perbezaan antara fopen w dan a
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-24 11:30:31
0
4
1079

'w' menghidupkan mod penulisan, halakan penuding fail ke pengepala fail dan potong saiz fail kepada sifar. Jika fail itu tidak wujud, cuba buatnya.
'a' dibuka dalam mod menulis dan menghalakan penuding fail ke hujung fail. Jika fail itu tidak wujud, cuba buatnya.

Nampaknya kedua-dua kaedah penulisan ini berbeza Tetapi bagaimana keputusan ujian saya adalah sama?
Kod adalah seperti berikut:

<?php
$dir = "./a/";
$txt = '1.txt';
$fh = fopen($txt, 'w');
$dh = opendir($dir);
while (($file = readdir($dh)) !== false) {
    
    if ($file == '.' || $file == '..') {
        continue;
    }
    
    fwrite($fh, $file."\n");
}

closedir($dh);
?>

Baca fail dalam folder a dan tuliskannya ke dalam teks Di sini, jika fopen ialah w atau a, mengapa hasilnya sama

曾经蜡笔没有小新
曾经蜡笔没有小新

membalas semua(4)
大家讲道理

Anda mula-mula menulis beberapa kandungan dalam 1.txt, dan kemudian anda boleh melihat perbezaannya dengan menguji w dan a

Ringkasnya, untuk fail teks yang sudah mempunyai kandungan, w ialah mengosongkan kandungan sedia ada dan kemudian menulisnya, dan a ialah menambah kandungan berdasarkan kandungan sedia ada

Untuk fail teks serba baharu, kedua-duanya adalah sama

大家讲道理

Jika 1.txt tidak wujud atau kandungan kosong, maka kesan penambahan dan penulisan semula adalah sama.
Jika 1.txt wujud dan mempunyai kandungan, kesannya berbeza.

给我你的怀抱

a adalah tambah, bukan ditimpa.
w adalah perlindungan langsung.

某草草

a模式是追加,这一句是重点,将文件指针指向文件末尾,如果原来文件存在,那么要写入的内容将添加到文件末尾,你那个例子,是创建新文件了,等同于w模式

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan