Heim >Backend-Entwicklung >PHP-Tutorial >PHP-Methode zum Akzeptieren von Dateien und zum Abrufen des Suffixnamens

PHP-Methode zum Akzeptieren von Dateien und zum Abrufen des Suffixnamens

墨辰丷
墨辰丷Original
2018-06-07 17:29:302335Durchsuche

In diesem Artikel wird hauptsächlich die Methode zur Verwendung von PHP zum Akzeptieren von Dateien und zum Abrufen ihrer Suffixnamen vorgestellt. Der Autor konzentriert sich auf die Verwendung der globalen Variablen $_FILES >Verwenden Sie ein HTML-Formular, um eine Post-Anfrage für den Datei-Upload zu simulieren. Der Code lautet wie folgt:

  <!DOCTYPE html> 
  <html> 
  <head> 
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
  <title>File Upload</title> 
  </head> 
  <body> 
   
  <form enctype="multipart/form-data" action="test.php" method="POST"> 
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> 
    Send this File:<input name="userfile" type="file"/> 
    <input type="submit" value="Send File" /> 
  </form> 
   
   
  </body> 
  </html>


Hinweis:

Stellen Sie sicher, dass das Attribut des Datei-Upload-Formulars enctype= ist „multipart/form- data“, sonst kann die Datei nicht hochgeladen werden

PHP

Zuerst müssen Sie die globale Variable $_FILES von PHP erklären. Dieses Array enthält alle hochgeladenen Dateiinformationen



$_FILE['userfile']['name']: Der ursprüngliche Name der Client-Maschinendatei
  • $_FILE['userfile'] ['type']: Der ursprüngliche Name der Datei. MIME-Typ
  • $_FILE['userfile']['size']: Größe der hochgeladenen Datei
  • $_FILE['userfile' ]['tmpname'] : Der temporäre Dateiname, der auf dem Server gespeichert wird, nachdem die Datei hochgeladen wurde
  • $_FILE['userfile']['error '] : und der Fehlercode zum Hochladen der Datei
  • Ideen
1 Generieren Sie eine 40-stellige Zufallszeichenfolge als Dateinamen

2 Datei an verschiedene Speicherorte verschieben, je nachdem, ob es sich um ein Bild oder eine Stimme handelt Folgender Code, um den Suffixnamen der hochgeladenen Datei zu erhalten:

HTML

  function processFile($files, $type) { 
    $uploadName = null; 
    foreach ($files as $name => $value) { 
      $originalName = $value[&#39;name&#39;]; 
      $arr = explode(".", $originalName); 
      $postfix = $arr[count($arr) - 1]; 
      $tmpPath = $value[&#39;tmp_name&#39;]; 
      $tmpType = $value[&#39;type&#39;]; 
      $tmpSize = $value[&#39;size&#39;]; 
    } 
     
    $newname = EhlStaticFunction::generateRandomStr(40).".".$postfix; 
     
    switch ($type) { 
      case 1 :  
        // 处理声音文件 
        $destination = VIDEOUPLOADDIR.$newname; 
        break; 
      case 2 : 
        // 处理图像文件 
        $destination = IMAGEUPLOADDIR.$newname; 
        break; 
    } 
     
    move_uploaded_file($tmpPath, $destination); 
  }

PHP

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <meta name="keywords" content=" keywords" />
  <meta name="description" content="description" />
</head>
<body>
  <form method="post" action="" enctype="multipart/form-data">
  <input type="file" name="upfile" size="20" />
  <input type="submit" name="submit" value="submit" />
  </form>
</body>
</html>

Ergebnisbeispiel:


Zusammenfassung

: Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für alle beim Lernen hilfreich sein kann.

20158591330708.jpg (423×167)

Verwandte Empfehlungen:

PHP verwendet preg_split und explosion, um die Methode zum Aufteilen von Textbereichen zum Speichern von Inhalten zu implementieren

PHP-Implementierung Methoden zum Sperren und Entsperren von Dateisperren

PHP-Methode zur Implementierung der automatischen Exit-Funktion von Benutzern, die 30 Minuten lang nicht gearbeitet haben, basierend auf Cookies

Das obige ist der detaillierte Inhalt vonPHP-Methode zum Akzeptieren von Dateien und zum Abrufen des Suffixnamens. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn