Fopen R + ve R arasındaki fark nedir!

3 Cevap

Ben fopen işlevi kullandığınızda, neden ben r kullanmayın + her zaman, ben herhangi bir şey yazmak için gitmiyorum bile ... sadece okuma yazma / okuma işlemi ayrılması için bir neden yoktur ..

Ben r + kullandığınızda i ya da bir şey içine yeni veri yazmak olabilir, çünkü gibi, dosya okuma için kilitli ...

another question : php sorularınızı

a+ : Open for reading and writing; place the file pointer at the end of the file. If the file does not exist, attempt to create it.

Eğer dosyanın sonuna ise ne (sonunda gösterici) .. okumak gerekiyordu!?

dosya sistemi şey hakkında daha fazla bilgi edinmek için nereye .... kafa karıştırıcı

3 Cevap

r r + vs: r + aslında ama okuma ve yazma için açık dosya başında poitner yer olacaktır. (W / w + aksine) dosya silme / kesecek değil, bu yüzden dosya verilerini okumak ve üzerine yazabilir

w vs w +: w ve w + + da (yazmanız ki, eğer yazdıklarını yeniden okumak için fseek kullanabilirsiniz) okumak sağlayacak w, dosyayı silmek / yaratacaktır. Not dosya her iki durumda da silinecek ve orijinal içerik kaybolacaktır. W + ile (yerine küçük bir değişiklik için dosyayı yeniden yaratma) dosyadaki verileri geri dönüp üzerine yazmasına fseek kullanabilirsiniz

a + vs: Bir yazı için açacak, bir + da sağlayacaktır okuma. Dosya kesilmiş olmayacak ve ileri / geri hareket fseek kullanabilirsiniz. Işaretçi sonunda alınacaktır. Bir + r + yerine sonunda işaretçisi olacak gibi - Eğer yazmak gerekirse / append sonra ilk doğru bir fseek komutu kaydeder

x + vs: Bu sadece w / w + gibi ama dosya (yani dosyayı silmek / kesilemiyor asla) varsa başarısız olur

r+ r karşı işletim sistemi seviyesinde bir nebze daha ayırır, ama gerçekten endişelenecek yeterli değil.

Bir dosyanın sonunda okunması EOF dönecektir; PHP bu fread(), boş bir dize dönerek gösterilir.

Modları fopen(3) man sayfası tarif edilmektedir.