(PHP 5, PHP 7)
file_put_contents — Bir dizgeyi bir dosyaya yazar
$dosyaismi
, mixed $veri
[, int $seçenekler
= 0
[, resource $bağlam
]] ) : intBu işlev, veriyi bir dosyaya yazmak için sırayla fopen(), fwrite() ve fclose() işlevlerinin çağrılmasına denk bir işlem yapar.
Eğer dosyaismi
mevcut değilse dosya oluşturulur.
Aksi takdirde, FILE_APPEND
seçeneği etkin değilse
veri mevcut dosyanın üzerine yazılır.
dosyaismi
Verinin yazılacağı dosyanın yolu.
veri
Yazılacak veri. Bir dizi, bir dizge veya bir özkaynak olabilir.
Eğer veri
bir akım özkaynağı ise tamponda kalan
verinin tamamı dosyaya yazılır. Bu işlem,
stream_copy_to_stream() kullanımına eşdğerdir.
veri
değiştirgesinde tek boyutlu bir dizi de
belirtebilirsiniz. Bu takdirde yapılan işlem
file_put_contents(dosyaismi, implode('', $dizi))
işlemine denktir.
seçenekler
İsteğe bağlı bu değiştirgede bazı kısıtlamalarla şu sabitlerden bir veya daha fazlasını ikil VEYA (|) ile birleştirerek belirtebilirsiniz:
Seçenet | Açıklama |
---|---|
FILE_USE_INCLUDE_PATH
|
Dosya include_path yönergesinde belirtilen yollarda aranır. |
FILE_APPEND
|
Eğer dosyaismi dosyası mevcutsa veri
dosyanın üzerine yazılmaz, sonuna eklenir. Eklemeler atomik olup
kilitlemeye gerek olmadığından LOCK_EX ile
birlikte kullanılamaz.
|
LOCK_EX
|
Yazma işlemi için dosya üzerinde ayrıcalıklı bir kilit edinilir.
FILE_APPEND ile birlikte kullanılamaz.
|
FILE_TEXT
|
veri metin kipinde yazılır. Eğer Evrenkod
anlambilimsel olarak etkinse öntanımlı kodlama UTF-8'dir. Özel bir
bağlam oluşturarak veya
stream_default_encoding() işleviyle öntanımlı
değeri değiştirerek farklı bir kodlama belirtebilirsiniz. Bu
seçenek FILE_BINARY ile birlikte
kullanılamaz. Bu seçenek PHP 6'dan beri kullanılabilmektedir.
|
FILE_BINARY
|
veri ikil kipte yazılır. Bu öntanımlıdır ve
FILE_TEXT ile birlikte kullanılamaz.Bu
seçenek PHP 6'dan beri kullanılabilmektedir.
|
bağlam
stream_context_create() ile oluşturulmuş geçerli bir bağlam özkaynağı.
İşlev, başarısızlık durumunda FALSE
, aksi takdirde dosyaya yazılan
baytların sayısı ile döner.
Örnek 1 - Basit kullanım örneği
<?php
$file = 'people.txt';
// İçeriğini almak için dosyayı açalım
$içerik = file_get_contents($file);
// İçeriğe yeni bir kişi ekleyelim
$içerik .= "John Smith\n";
// İçeriği dosyaya yazalım
file_put_contents($file, $içerik);
?>
Örnek 2 - Seçenek kullanımı
<?php
$file = 'people.txt';
// Dosyaya eklenecek yeni kişi
$person = "John Smith\n";
// $person değişkeninin değerini $file dosyasının sonuna ekleyelim.
file_put_contents($file, $person, FILE_APPEND);
?>
Sürüm: | Açıklama |
---|---|
5.0.0 | Bağlam desteği eklendi. |
5.1.0 |
Added support for LOCK_EX için destek ve
data değiştirgesinde bir akım kaynağının
aktarılabilmesi yeteneği eklendi.
|
6.0.0 |
FILE_TEXT ve FILE_BINARY
seçenekleri için destek eklendi.
|
Bilginize: Bu işlev ikil dosyalarla çalışırken dosya içeriğini değiştirmez.
fopen sarmalayıcıları etkin kılınmışsa bu işlevde dosya ismi olarak bir URL belirtebilirsiniz. Dosya isminin nasıl belirtilebileceği hakkında bilgi edinmek için fopen() işlevine bakınız. Sarmalayıcıların neler yapabildiği, kullanım bilgileri ve bunlar tarafından kullanılan öntanımlı değişkenler hakkında bilgi edinmek için ise Desteklenen Protokoller ve Sarmalayıcılar bölümüne bakınız.