Alex: PHP-Funktion zum Abfragen des Mime-Typs

Hallo!

Gibt es eine Funktion in PHP, mit der ich feststellen kann, von welchem Mime-Typ die jeweilige Datei ist?

Danke und Gruß!

Alex

  1. Hallo Alex,

    Gibt es eine Funktion in PHP, mit der ich feststellen kann, von welchem Mime-Typ die jeweilige Datei ist?

    Was für eine Datei? Wo kommt die her?

    Christian

    --
    Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
    1. Was für eine Datei? Wo kommt die her?

      Ich möchte ein Verzeichnis mit Dateien auslesen und deren Mime-Typen bestimmen.

      1. Hallo Alex,

        Ich möchte ein Verzeichnis mit Dateien auslesen und deren Mime-Typen bestimmen.

        Das Verzeichnis befindet sich auf dem Webserver, richtig? Dann kannst Du nur raten. Eventuell gibt Dir die Endung über den Inhalt der Datei aufschluss. Eine Funktion gibt es nicht.

        Du könntest ein assoziatives Array machen, dass die Endungen den entsprechenden MIME-Types zuordnet:

        $mime_types = array (
          'htm' => 'text/html',
          'html' => 'text/html',
          'xhtml' => 'application/xhtml+xml',
          'xml' => 'text/xml',
          'png' => 'image/png',
          'mng' => 'movie/mng'
          // etc.
        );

        und dann so versuchen, die MIME-Type zu bestimmen. Du könntest natürlich auch versuchen, den Inhalt zu analysieren, das ist aber um einiges aufwendiger.

        Christian

        --
        Ich bitte darum, dass ein Themenbereich (BARRIEREFREIHEIT) eingerichtet wird.
        1. Danke! Habe mir erhofft, dass es vielleicht eine andere Möglichtkeit gibt.

      2. Hallo,

        Ich möchte ein Verzeichnis mit Dateien auslesen und deren Mime-Typen bestimmen.

        Bei Bildern hilft ab PHP 4.3.0 die Funktion image_type_to_mime_type(), die als Argument einen Zahlenwert erwartet. Dieser kann mit getimagesize() [PHP 3/4 --> Ergebnis ist ein Array] bestimmt werden:

        $imageinfos=getimagesize("bild.jpg");
        $imagetype=$imageinfos[2];                     // hier 2, da JPEG
        $mimetype=image_type_to_mime_type($imagetype); // hier image/jpeg

        Bei niedrigeren PHP-Versionen kann man den erhaltenen Zahlenwert auch manuell umsetzen: 1 = image/gif, 2 = image/jpeg, 3 = image/png usw.

        MfG, Thomas