Heim >Backend-Entwicklung >PHP-Tutorial >PHP implementiert den Datei-Upload auf den Server (einschließlich Code)

PHP implementiert den Datei-Upload auf den Server (einschließlich Code)

烟雨青岚
烟雨青岚nach vorne
2020-06-16 12:43:175108Durchsuche

PHP implementiert den Datei-Upload auf den Server (einschließlich Code)

PHP-Implementierung des Datei-Uploads auf den Server (einschließlich Code)

Erstellen Sie ein Datei-Upload-Formular

Es ist sehr nützlich, Benutzern das Hochladen von Dateien aus einem Formular zu erlauben.

Bitte schauen Sie sich das folgende HTML-Formular zum Hochladen von Dateien an:

<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>

Bitte beachten Sie folgende Informationen zu diesem Formular:

d2047daee3bfa758dad88f53617890a5 gibt an, dass die Eingabe als Datei verarbeitet werden soll. Wenn Sie beispielsweise eine Vorschau in einem Browser anzeigen, wird neben dem Eingabefeld eine Schaltfläche zum Durchsuchen angezeigt.

Hinweis: Benutzern das Hochladen von Dateien zu erlauben, stellt ein großes Sicherheitsrisiko dar. Bitte erlauben Sie nur vertrauenswürdigen Benutzern, Datei-Upload-Vorgänge durchzuführen.

Erstellen Sie ein Upload-Skript

Die Datei „upload_file.php“ enthält den Code zum Hochladen von Dateien:

<?php
if ($_FILES["file"]["error"] > 0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br />";
  }
else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br />";
  echo "Type: " . $_FILES["file"]["type"] . "<br />";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
  echo "Stored in: " . $_FILES["file"]["tmp_name"];
  }
?>

Mithilfe des globalen Arrays $_FILES von PHP , Sie können Dateien von einem Client-Computer auf einen Remote-Server hochladen.

Der erste Parameter ist der Eingabename des Formulars, und der zweite Index kann „Name“, „Typ“, „Größe“, „tmp_name“ oder „Fehler“ sein. Etwa so:

$_FILES["file"]["name"] – Der Name der hochgeladenen Datei $_FILES["file"]["type"] - Der Typ der hochgeladenen Datei $_FILES[ " file"]["size"] – Die Größe der hochgeladenen Datei in Bytes $_FILES["file"]["tmp_name"] - Der Name der temporären Kopie der auf dem Server gespeicherten Datei $_FILES["file "][ "error"] – Fehlercode, der durch das Hochladen von Dateien verursacht wurde

Dies ist eine sehr einfache Möglichkeit, Dateien hochzuladen. Aus Sicherheitsgründen sollten Sie Beschränkungen hinzufügen, wer zum Hochladen von Dateien berechtigt ist.

Upload-Limit

In diesem Skript haben wir ein Limit für Datei-Uploads hinzugefügt. Benutzer können nur .gif- oder .jpeg-Dateien hochladen, und die Dateigröße muss weniger als 20 KB betragen:

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Error: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Stored in: " . $_FILES["file"]["tmp_name"];
    }
  }
else
  {
  echo "Invalid file";
  }
?>

Speichern Sie die hochgeladene Datei

Das obige Beispiel ist in Der temporäre PHP-Ordner des Servers erstellt eine temporäre Kopie der hochgeladenen Datei.

Diese temporäre Kopie verschwindet, wenn das Skript endet. Um die hochgeladene Datei zu speichern, müssen wir sie an einen anderen Ort kopieren:

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>

Das obige Skript erkennt, ob die Datei bereits existiert. Wenn sie nicht existiert, kopiert es die Datei in den angegebenen Ordner.

Hinweis: In diesem Beispiel wird die Datei in einem neuen Ordner mit dem Namen „upload“ gespeichert.

Beginnen Sie mit dem Herausnehmen des dritten Elements des Arrays und geben Sie die verbleibenden Elemente im Array zurück:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2));
?>

Vielen Dank fürs Lesen, ich hoffe, Sie werden viel davon profitieren.

Originallink: https://www.cnblogs.com/yszr/p/10522067.html

Empfohlenes Tutorial: „PHP-Tutorial

Das obige ist der detaillierte Inhalt vonPHP implementiert den Datei-Upload auf den Server (einschließlich Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51dev.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen