move_uploaded_file Fonksiyonu

move_uploaded_file fonksiyonu, yüklenen bir dosyayı geçici dizinden belirtilen bir konuma taşır. Fonksiyon ilk parametre olarak dosyanın geçici adını, ikinci parametre olarak ise dosyanın kaydedileceği yolu alır.

Sözdizimi

phpmove_uploaded_file(string $from, string $to): bool

Örnek

Yüklenen dosyanın uploads klasörüne taşınması:

php<?php
  $temp = $_FILES['file']['tmp_name'];
  $name = $_FILES['file']['name'];
  
  if (move_uploaded_file($temp, 'uploads/' . $name)) {
    echo 'dosya başarıyla yüklendi';
  } else {
    echo 'yükleme başarısız';
  }
?>

Örnek

Taşıma işleminden önce dosyanın başarıyla yüklenip yüklenmediğinin kontrol edilmesi:

php<?php
  $temp = $_FILES['file']['tmp_name'];
  $name = $_FILES['file']['name'];
  
  if ($_FILES['file']['error'] === UPLOAD_ERR_OK) {
    $res = move_uploaded_file($temp, 'files/' . uniqid() . '_' . $name);
    echo $res ? 'Başarılı' : 'Hata';
  } else {
    echo 'Yükleme hatası: ' . $_FILES['file']['error'];
  }
?>

Örnek

Taşıma sırasında benzersiz bir dosya adı oluşturma:

php<?php
  $ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
  $newName = 'userfile_' . time() . '.' . $ext;
  $res = move_uploaded_file($_FILES['file']['tmp_name'], 'storage/' . $newName);
  var_dump($res);
?>

Ayrıca Bakınız

  • copy fonksiyonu,
    bir dosyayı kopyalar
  • rename fonksiyonu,
    bir dosyayı yeniden adlandırır
  • is_uploaded_file fonksiyonu,
    yüklenen bir dosyayı kontrol eder