„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich den Dateityp bestimmen, ohne auf Erweiterungen angewiesen zu sein?

Wie kann ich den Dateityp bestimmen, ohne auf Erweiterungen angewiesen zu sein?

Veröffentlicht am 08.11.2024
Durchsuche:116

How to Determine File Type Without Relying on Extensions?

So erkennen Sie Dateitypen, ohne auf Erweiterungen angewiesen zu sein

Es ist wertvoll, über die Untersuchung ihrer Erweiterung hinaus festzustellen, ob es sich bei einer Datei um ein MP3- oder Bildformat handelt Aufgabe in der Programmierung. Hier ist eine umfassende Lösung, die nicht auf Erweiterungen angewiesen ist:

PHP >= 5.3:

$mimetype = finfo_fopen(fopen($filename, 'r'), FILEINFO_MIME_TYPE);

PHP

$mimetype = mime_content_type($filename);

Alternativen:

  • exif_imagetype : Überprüft speziell das Bild mimetypes.
  • getimagesize: Ähnlich wie exif_imagetype, kann aber Probleme mit der Bibliotheksabhängigkeit haben.

Proxy-Methode:

Für einen allgemeineren Ansatz sollten Sie erwägen, diese Funktionen in eine Proxy-Methode einzubinden:

function getMimeType($filename)
{
    $mimetype = false;
    if (function_exists('finfo_fopen')) {
        // open with FileInfo
    } elseif (function_exists('getimagesize')) {
        // open with GD
    } elseif (function_exists('exif_imagetype')) {
        // open with EXIF
    } elseif (function_exists('mime_content_type')) {
        $mimetype = mime_content_type($filename);
    }
    return $mimetype;
}

Durch die Verwendung dieser Proxy-Methode können Sie den Mimetyp einer Datei basierend auf der Verfügbarkeit verschiedener Funktionen auf Ihrem System leicht bestimmen.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3