Mime-Typ - (mime.class.php)

new mime() - Object

$string code = null gibt die Dateierweiterung in Kleinbuchstaben an, z.B. 'jpg'
$string media = null gibt den Medien-Typ an, z.B. 'image'
$string contentType = null gibt den Content-Typ an, z.B. 'image/jpeg'
$string contentTypeApache = null gibt den Content-Typ an, der direkt aus der Mime-Datei von Apache abgefragt wurde, z.B. 'image/jpeg'
$string class = null gibt die Content-Typ Klasse als string an, z.B. 'mime\html', ansonsten null
$mime = new mime('html');
$mime->class::header();
$string charset = null gibt den Charset als new charset() Objekt an
$bool parse = true gibt an, ob dieser Mime-Typ von PHP geparst werden muss, z.B. reine Textdateien sollten von PHP geparst werden, da hier PHP-Code enthalten sein kann
$bool isDefault = false gibt an, ob dieses Objekt der default Mime-Typ ist
$bool isMime = false gibt an, ob dieses Objekt auch tatsächlich ein gültiger Mime-Typ ist
$float weight = 1.0 gibt die Gewichtung des Contenttypes an
$mime = new mime('image/jpeg;q=0.5');
echo $mime->weight; // Ausgabe: 0.5
__construct ($string $numeric $object $context = null[, $bool $search = false])
$context Angabe des Mime-Typs als $string; kann auch als Suche verwendet werden: z.B. 'imagebmp'; Groß- und Kleinschreibung wird nicht beachtet; oder als new mime() Objekt
$search optional; gibt bei true an, ob bei ungenauer $context Eingabe, eine Suche durchgeführt werden soll
erstellt ein new mime() Object und gibt true zurück wenn erfolgreich ein Mime-Typ gefunden wurde; ansonsten wird false zurückgegeben
$mime = new mime('jpg');
$mime = new mime('imagebmp', true);
$mime = new mime(new mime('jpg'));
$mime = new mime('image/jpeg;q=0.9');
$mime = new mime('image/jpeg;charset=UTF-8');
__get ($string $name)
$name gibt die Objekteigenschaft an
gibt die Objekteingenschaft zurück wenn sie vorhanden ist; ansonsten wird null zurückgegeben
$mime = new mime('jpg');
echo $mime->code; // Ausgabe: 'jpg'
__set ($string $name, $mixed $val)
$name gibt die Objekteigenschaft an
$val gibt den zu speichernden Wert an
gibt true zurück wenn die Variable gespeichert werden konnte, ansonsten false
$mime = new mime('jpg');
$mime->code = 'exe'; // Ausgabe: 'exe' wird nicht gespeichert
__toString ()
gibt den Content-Typ als $string zurück; wenn er nicht vorhanden ist wird ein leerer $string zurückgegeben ' '
$mime = new mime('jpg');
echo $mime; // Ausgabe: 'image/jpeg'

$mime = new mime('image/jpeg;q=0.7;charset=UTF-8');
echo $mime; // Ausgabe: 'image/jpeg;q=0.7;charset=UTF-8'
__invoke ()
es wird die Funktion __toString() zurückgegeben
$mime = new mime('jpg');
$mime(); // Ausgabe: 'image/jpeg'
__debugInfo ()
gibt ein Array mit allen Eigenschaften zurück
$mime = new mime('jpg');

var_dump($mime);

Überprüfung

static mime::isMime ($mixed $mime = null)
$mime gibt das new mime() Objekt an
gibt true zurück wenn das übergebene Objekt Instanz von new mime() ist und die ->isMime Eigenschaft auch true ist; ansonsten wird false zurückgegeben
mime::isMime('jpg'); // Ausgabe: false

mime::isMime(new mime('jpg')); // Ausgabe: true
static mime::isMimeCode ($mixed $mime = null[, $bool $case_sensitive = false])
$mime gibt die Dateierweiterung an die überprüft werden soll
$case_sensitive mit true wird Groß- und Kleinschreibung beachtet, es muss klein geschrieben sein
ist die Dateierweiterung gültig, wird true zurückgegeben; ansonsten false
mime::isMimeCode('html'); // Ausgabe: true

mime::isMimeCode('HTML'); // Ausgabe: true

mime::isMimeCode('HTML', true); // Ausgabe: false
static mime::isMimeCodeArray ($mixed $codeArray = null[, $bool $case_sensitive = false])
$codeArray gibt die Dateierweiterung als array an die überprüft werden soll, es wird kein new mime() Objekt akzeptiert!
$case_sensitive mit true wird Groß- und Kleinschreibung beachtet, es muss klein geschrieben sein
sind die Dateierweiterungen gültig, wird true zurückgegeben; ansonsten false
mime::isMimeCodeArray('html'); // Ausgabe: false

mime::isMimeCodeArray('HTML'); // Ausgabe: false

mime::isMimeCodeArray(['HTML', 'jpg']); // Ausgabe: true
static mime::compare ($object $mime1 = null, $object $mime2 = null[, $float $weight = false])
$mime1 gibt das new mime() Objekt an, welches verglichen werden soll
$mime2 gibt das new mime() Objekt an, welches verglichen werden soll
$weight optional; mit true wird auch die Gewichtung des Contenttypes berücksichtigt; mit false ignoriert
gibt true zurück wenn die übergebenen Objekte new mime() gleich sind; ansonsten wird false zurückgegeben
mime::compare(new mime('jpg'), new mime('jpeg')); // Ausgabe: false

Action

static mime::parseString ($string $mimeString = null)
$mimeString übergibt den string der geparst werden soll
gibt immer ein array zurück die den Mime-Code, den Charset und Weights enthält ['mime' => #CODE, 'charset' => #CHARSET, 'weight' => #WEIGHT]
mime::parseString('txt');

mime::parseString('html; charset=utf-8 ;q=0.7');

Informationsausgabe

static mime::getDefault ()
gibt den Default Mimetype als string zurück
echo mime::getDefault();
static mime::detect ($string $txt = null)
$txt gibt den Inhalt als string an, bei dem der Mimetyp ermittelt werden soll
gibt immer ein new mime() Objekt zurück, welcher aus dem string ermittelt werden konnte
mime::detect('Dies ist ein Text'); // Ausgabe: new mime('txt')
static mime::getParse ($mixed $mime = null)
$mime gibt das new mime() Objekt an oder Extension als String, Groß- und Kleinschreibung wird nicht beachtet
gibt false zurück wenn das übergebene Objekt Instanz von new mime() ist und die ->parse Eigenschaft auch false ist, sowie wenn die Extension auch false ist; ansonsten wird true zurückgegeben, da sonst PHP Code ungewollt ausgegeben wird
mime::getParse('jpg'); // Ausgabe: false

mime::getParse(new mime('jpg')); // Ausgabe: false

mime::getParse('txt'); // Ausgabe: true

mime::getParse(new mime('txt')); // Ausgabe: true
static mime::getContentType ($mixed $mime = null)
$mime gibt das new mime() Objekt an oder Extension als String, Groß- und Kleinschreibung wird nicht beachtet
gibt bei Erfolg den Content-Typ als $string zurück; ansonsten wird null zurückgegeben
mime::getContentType('jPg'); // Ausgabe: 'image/jpeg'

mime::getContentType(new mime('jPg')); // Ausgabe: 'image/jpeg'
static mime::getContentTypeApache ($mixed $mime = null)
$mime gibt das new mime() Objekt an oder Extension als String, Groß- und Kleinschreibung wird nicht beachtet
gibt bei Erfolg den Content-Typ als $string zurück, direkt aus der Mime.types Datei des Apache Servers; ansonsten wird null zurückgegeben
mime::getContentTypeApache('jPg'); // Ausgabe: 'image/jpeg'

mime::getContentTypeApache(new mime('jPg')); // Ausgabe: 'image/jpeg'
static mime::getClass ($mixed $mime = null)
$mime gibt das new mime() Objekt an oder Extension als String, Groß- und Kleinschreibung wird nicht beachtet
gibt die Content-Typ Klasse als string zurück, z.B. 'mime\html'; ansonsten null
mime::getClass('php'); // Ausgabe: 'mime\html'

Suchfunktion

static mime::searchContentType ($string $typ = null, $string $subtyp = null)
$typ gibt den Typ als Suchwort an; $string z.B. 'application'
$subtyp gibt den Subtyp als Suchwort an; $string z.B. 'json'
gibt bei erfolgreicher Suche den Mimecode als $string zurück; ansonsten wird null zurückgegeben
mime::searchContentType('aplication', 'jsn'); // Ausgabe: 'json'

Arraylisten

static mime::getMimeList ()
gibt ein $array zurück, mit allen gefundenen Dateierweiterungen code [CODE => [MIME => CONTENTTYP, PARSE => $bool, MEDIA => MEDIATYP, ORDER => SORTIERUNG]]; ansonsten wird im Fehlerfall null zurückgegeben
mime::getMimeList(); // Ausgabe: ['iso' => ['mime' => 'application/x-iso9660-image', 'parse' => false], 'jpg' => ['mime' => 'image/jpeg', 'parse' => false, 'media' => 'image'], ...]
static mime::getMimeListApache ()
gibt ein $array zurück, mit allen gefundenen Dateierweiterungen code [CODE => [0 => CONTENTTYP, 1 => CONTENTTYP]] inklusive ein oder mehreren Content-Typen, direkt aus der Mime.types Datei des Apache Servers; ansonsten wird im Fehlerfall null zurückgegeben
mime::getMimeListApache(); // Ausgabe: ['iso' => ['application/octet-stream', 'application/x-iso9660-image'], 'jpg' => ['image/jpeg'], ...]
static mime::getContentTypeList ()
gibt ein $array zurück, mit allen Content-Typen [TYP => [SUBTYP => MIME, SUBTYP => MIME]]; im Fehlerfall wird null zurückgegeben
mime::getContentTypeList(); // Ausgabe: ['application' => ['xml' => 'xml', 'xml-xsd' => 'xsd'], ...]