Συνάρτηση move_uploaded_file

Η συνάρτηση move_uploaded_file μετακινεί ένα ανεβασμένο αρχείο από τον προσωρινό κατάλογο στην καθορισμένη τοποθεσία. Ως πρώτη παράμετρο η συνάρτηση δέχεται το προσωρινό όνομα αρχείου, και ως δεύτερη - τη διαδρομή για αποθήκευση του αρχείου.

Σύνταξη

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

Παράδειγμα

Μετακίνηση ανεβασμένου αρχείου στον φάκελο uploads:

php<?php
  $temp = $_FILES['file']['tmp_name'];
  $name = $_FILES['file']['name'];
  
  if (move_uploaded_file($temp, 'uploads/' . $name)) {
    echo 'file uploaded successfully';
  } else {
    echo 'upload failed';
  }
?>

Παράδειγμα

Έλεγχος για επιτυχή ανέβασμα αρχείου πριν τη μετακίνηση:

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 ? 'Success' : 'Error';
  } else {
    echo 'Upload error: ' . $_FILES['file']['error'];
  }
?>

Παράδειγμα

Δημιουργία μοναδικού ονόματος αρχείου κατά τη μετακίνηση:

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);
?>

Δείτε επίσης

  • τη συνάρτηση copy,
    που αντιγράφει ένα αρχείο
  • τη συνάρτηση rename,
    που μετονομάζει ένα αρχείο
  • τη συνάρτηση is_uploaded_file,
    που ελέγχει ένα ανεβασμένο αρχείο