String: letzte 3 Zeichen herausfiltern

Shinzo

Mitglied
Hallo, habe wieder ein kleines Problem.

Ich will aus einem String, der so aussieht:
z.B.:

$string = "name_234.gif"

oder

$string2 = "name_123.jpg"

nur die letzten 3 Zeichen, in dem Fall gif oder jpg, haben.

Danke im Voraus.
 
Geht sogar nur mit substr:

$rest = substr ("abcdef", -3); <-- ergibt "def"

bzw:

Code:
$string2 = "name_123.jpg"
$rest = substr ("string", -3);  

// $rest == "jpg"
 
Der Algorithmus sollte jedoch so flexibel sein, dass auch längere oder kürzere Dateierweiterungen erkannt werden:
PHP:
<?php

	function getExtension($filename='') {
		if( !is_string($filename) || !is_string(strstr($filename, chr(0x2E))) ) {
			return false;
		}
		$parts = explode(chr(0x2E), $filename);
		return $parts[count($parts)-1];
	}

?>
 
Mal abgesehen davon, würde mir bei der Überprüfung des Dateitypen einer Datei nicht nur die Dateiendung angucken. Das kann man zu leicht manipulieren.
Ich würde mir dann schon eher den Mime-Typ angucken.
 
Zurück