file_put_contents
(PHP 5, PHP 7, PHP 8)
file_put_contents — Bir dizgeyi bir dosyaya yazar
Açıklama
file_put_contents
(
string $dosyaismi
,
mixed $veri
,
int $seçenekler
= 0
,
resource $bağlam
= ?
) :
int
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.
Değiştirgeler
-
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:
Belirtilebilecek seçenekler
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ğı.
Dönen Değerler
İşlev, başarısızlık durumunda false
, aksi takdirde dosyaya yazılan
baytların sayısı ile döner.
Örnekler
Ö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);
?>
Notlar
Bilginize:
Bu işlev ikil dosyalarla çalışırken
dosya içeriğini değiştirmez.
İpucu
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.