(PHP 4 >= 4.0.3, PHP 5, PHP 7)
is_uploaded_file — Bir dosya HTTP POST üzerinden karşıya yüklenebilecekse bunu söyler
$dosyaismi
) : bool
dosyaismi
ile belirtilen dosya HTTP POST üzerinden
karşıya yüklenebiliyorsa TRUE
döndürür. Yetkisiz kullanıcıların
/etc/passwd gibi üzerinde işlem yapmalarının yasak
olduğu dosyaları betik üzerinden dışarı göndermelerine engel olmaya
yardımcı olur.
Bir dosyanın karşıya yüklenmesi ile dosya içeriğinin kullanıcıya veya aynı sistem üzerindeki diğer kullanıcılara ifşa edilmesini sağlayacak şeyleri yapma şansı doğacaksa bu sınamalar oldukça önem kazanır.
İşlemin gerektiği gibi yapılabilmesi için is_uploaded_file() işlevi $_FILES['userfile']['tmp_name'] gibi bir değiştirgeye ihtiyaç duyar - istemcilerin makinesinde karşıya yüklenen dosyanın ismi $_FILES['userfile']['name'] çalışmaz.
dosyaismi
Sınanacak dosyanın ismi.
Başarı durumunda TRUE
, başarısızlık durumunda FALSE
döner.
Örnek 1 - is_uploaded_file() örneği
<?php
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo $_FILES['userfile']['name'] ." dosyası başarıyla karşıya yüklendi.\n";
echo "Dosya içeriği:\n";
readfile($_FILES['userfile']['tmp_name']);
} else {
echo "Saldırısı olasılığı: ";
echo "'". $_FILES['userfile']['tmp_name'] . "' ";
echo "dosyası karşıya yüklenmek isteniyor.";
}
?>