Heim php教程 PHP源码 PHP中获取文件扩展名的N种方法小结_php技巧

PHP中获取文件扩展名的N种方法小结_php技巧

May 25, 2016 pm 05:12 PM
扩展名

PHP中获取文件扩展名的N种方法 从网上收罗的,基本上就以下这几种方式

第1种方法:

代码如下:

function get_extension($file) 
{ 
substr(strrchr($file, '.'), 1); 
}
Nach dem Login kopieren


第2种方法:

代码如下:

function get_extension($file) 
{ 
return substr($file, strrpos($file, '.')+1); 
}
Nach dem Login kopieren


第3种方法:

代码如下:

function get_extension($file) 
{ 
return end(explode('.', $file)); 
}
Nach dem Login kopieren


第4种方法:

代码如下:

function get_extension($file) 
{ 
$info = pathinfo($file); 
return $info['extension']; 
}
Nach dem Login kopieren


第5种方法:

代码如下:

function get_extension($file) 
{ 
return pathinfo($file, PATHINFO_EXTENSION); 
}
Nach dem Login kopieren


以上几种方式粗看了一下,好像都行,特别是1、2种方法,在我不知道pathinfo有第二个参数之前也一直在用。但是仔细考虑一下,前四种方法都有各种各样的毛病。要想完全正确获取文件的扩展名,必须要能处理以下三种特殊情况。
没有文件扩展名
路径中包含了字符.,如/home/test.d/test.txt
路径中包含了字符.,但文件没有扩展名。如/home/test.d/test
很明显:1、2不能处理第三种情况,3不能正确处理第一三种情况。4可以正确处理,但是在不存在扩展名时,会发出一个警告。只有第5种方法才是最正确的方法。顺便看一下pathinfo方法。官网上介绍如下:
$file_path = pathinfo('/www/htdocs/your_image.jpg');

echo "$file_path ['dirname']\n";
echo "$file_path ['basename']\n";
echo "$file_path ['extension']\n";
echo "$file_path ['filename']\n"; // only in PHP 5.2+
它会返回一个数组,包含最多四个元素,但是并不会一直有四个,比如在没有扩展名的情况下,就不会有extension元素存在,所以第4种方法才会发现警告。但是phpinfo还支持第二个参数。可以传递一个常量,指定返回某一部分的数据:
PATHINFO_DIRNAME - 目录
PATHINFO_BASENAME - 文件名(含扩展名)
PATHINFO_EXTENSION - 扩展名
PATHINFO_FILENAME - 文件名(不含扩展名,PHP>5.2)
这四个常量的值分别是1、2、4、8,刚开始我还以为可以通过或运算指定多个:
pathinfo($file, PATHINFO_EXTENSION | PATHINFO_FILENAME);
后来发现这样不行,这只会返回几个进行或运算常量中最小的那个。也就是四个标志位中最小位为1的常量。
以下是一些补充方法
一,php explode函数

代码如下:

$pic = 'abc.php'; 
$pics = explode('.' , $pic); 
echo $num = count($pics); 
echo &#39;<br>&#39;.$pics[$num-1];
Nach dem Login kopieren



这样就可以输出
.php了。

下面利用foreach

代码如下:

foreach ($pics as $value) //2 
{ 
$a = $value; 
} 
echo $a.&#39;<br>&#39;;
Nach dem Login kopieren



来有一个比较好的函数end我推荐使用此函数快捷 end函数用法

代码如下:

echo end($pics); 
echo &#39;<br>&#39;;
Nach dem Login kopieren



其它的访方法可以在文件上传时判断,不过那需要文件上传不上传我们不能使用$_FILES来操作。

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

4 schnelle Möglichkeiten zum Öffnen von Webp-Bildern unter Windows 11 4 schnelle Möglichkeiten zum Öffnen von Webp-Bildern unter Windows 11 Sep 30, 2023 pm 02:13 PM

WebP oder WebPicture ist ein modernes Bildformat, das von Google entwickelt wurde und in letzter Zeit in der Branche weit verbreitet ist. Diese Bilder sind kleiner als JPG-, JPEG- oder PNG-Dateien, was die Seitenladegeschwindigkeit erhöht und sie aus SEO-Sicht wertvoll macht. Aber wie öffnet man WebP-Dateien in Windows 11? Da es sich um ein relativ neues Bildformat handelt, das erstmals im März 2010 angekündigt wurde, dürfte die Kompatibilität ein Problem darstellen. Einige Fotobearbeitungsprogramme unterstützen Dateierweiterungen immer noch nicht. Aber die Dinge ändern sich schnell! Unterstützt Windows 11 WebP? Obwohl WebP-Bilddateien nicht mit früheren Versionen von Windows 11, M. kompatibel sind

Wie behebe ich zu lange Dateinamen oder Erweiterungen in Windows 11? Wie behebe ich zu lange Dateinamen oder Erweiterungen in Windows 11? Apr 22, 2023 pm 04:37 PM

Hatten Sie schon einmal Probleme beim Übertragen von Dateien, die Sie daran gehindert haben? Nun, viele Windows-Benutzer haben kürzlich berichtet, dass beim Kopieren und Einfügen von Dateien in einen Ordner Probleme aufgetreten sind, bei denen die Fehlermeldung „Der Dateiname des Zielordners ist zu lang“ ausgegeben wurde. Darüber hinaus äußerten einige andere Windows-Benutzer ihre Frustration beim Öffnen einer Datei und sagten: „Der Dateiname oder die Erweiterung ist zu lang“ und sie konnten die Datei nicht öffnen. Dies enttäuscht die Benutzer, da ihnen nicht gestattet wird, Dateien in einen anderen Ordner zu übertragen. Bei der Analyse des Problems haben wir eine Reihe von Lösungen gefunden, die das Problem beheben und es Benutzern ermöglichen können, Dateien problemlos zu übertragen. Wenn Sie sich in einer ähnlichen Situation befinden, finden Sie in diesem Beitrag weitere Informationen. Quelle: https

So öffnen Sie Dateien ohne Erweiterung in Windows 11, 10 So öffnen Sie Dateien ohne Erweiterung in Windows 11, 10 Apr 14, 2023 pm 05:52 PM

Eine Datei zu haben bedeutet nicht viel, es sei denn, Sie kennen ihre Erweiterung. Einige Dateien haben keine Erweiterung. Meistens ist die Erweiterung wahrscheinlich nur versteckt und Sie können sie mithilfe der in Abschnitt 1 aufgeführten Methoden leicht im Windows-Datei-Explorer selbst finden. Auch wenn die Datei eigentlich keine Erweiterung hat, kann sie leicht gefunden werden, indem Sie die in Abschnitt 2 aufgeführten Methoden befolgen. Sobald Sie schließlich die Dateierweiterung kennen, können Sie die Schritte in Abschnitt 3 befolgen, um eine geeignete Anwendung zum Öffnen Ihrer Datei zu finden. Dieser Artikel ist also eine vollständige Lösung für alle Ihre Dateierweiterungsprobleme. Ich wünsche Ihnen viel Spaß beim Lesen! Abschnitt 1: So ermitteln Sie, ob eine Datei eine Erweiterung hat. Der erste Schritt beim Öffnen einer Datei ohne Erweiterung besteht darin, sicherzustellen, dass die Datei tatsächlich keine Erweiterung hat. Das

Umgang mit inkonsistenten Dateiformaten und Erweiterungen Umgang mit inkonsistenten Dateiformaten und Erweiterungen Feb 19, 2024 pm 04:47 PM

So beheben Sie die Diskrepanz zwischen Dateiformat und Erweiterung. Bei der Verwendung des Computers stoßen wir häufig auf Diskrepanzen zwischen Dateiformat und Erweiterung. Wenn wir versuchen, eine Datei zu öffnen, meldet das System möglicherweise „Die Datei kann nicht geöffnet werden“ oder „Das Dateiformat wird nicht unterstützt“. Diese Situation kann verwirrend und frustrierend sein, ist aber eigentlich gar nicht so schwer zu beheben und erfordert nur ein paar einfache Schritte. Zuerst müssen wir verstehen, was das Dateiformat und die Erweiterung bedeuten. Das Dateiformat bezieht sich auf die Speichermethode und die Codierungsmethode der Datei. Beispielsweise handelt es sich um eine Textdatei

So benennen Sie die Erweiterung aller Dateien in einem Ordner um, einschließlich Unterordnern So benennen Sie die Erweiterung aller Dateien in einem Ordner um, einschließlich Unterordnern Apr 14, 2023 pm 12:22 PM

Angenommen, Sie müssen die Erweiterung einer Datei von einer Erweiterung in eine andere umbenennen, beispielsweise von jpg in png. Es ist natürlich ganz einfach! Was aber, wenn Sie mehrere Dateien haben, deren Erweiterungen geändert werden müssen? Oder noch schlimmer: Was wäre, wenn sich diese mehreren Dateien auch in mehreren Ordnern und Unterordnern innerhalb eines einzigen Ordners befinden? Nun, für einen normalen Menschen kann das ein Albtraum sein. Aber für einen Geek absolut nicht. Die Frage ist nun: Bist du ein Geek? Nun, mit Hilfe von Geek Page ist das definitiv der Fall! In diesem Artikel erklären wir, wie Sie die Erweiterung aller Dateien in einem Ordner, einschließlich der Unterordner Ihrer Wahl, mithilfe einer Batch-Skript-Methode einfach von einer Erweiterung in eine andere umbenennen können. Beachten:

Was ist das Dokumentensuffix? Was ist das Dokumentensuffix? Mar 01, 2023 pm 03:06 PM

Das Dokumentsuffix, auch Dateierweiterung genannt, ist ein Mechanismus, den das Betriebssystem zum Markieren von Dateitypen verwendet. Die Hauptfunktion des Dokumentsuffixes besteht darin, das System entscheiden zu lassen, welche Software beim Öffnen des Dokuments ausgeführt werden soll Die angegebene Datei wird zum Schutz bestimmter Dateien, zum Einsparen von Speicherplatz, zum Löschen von Symbolen im Einstellungsfeld und zum Festlegen von Zuordnungen verwendet.

Verwenden Sie die Funktion path/filepath.Ext, um den Erweiterungsteil des Dateipfads abzurufen Verwenden Sie die Funktion path/filepath.Ext, um den Erweiterungsteil des Dateipfads abzurufen Jul 25, 2023 pm 08:42 PM

Verwenden Sie die Funktion path/filepath.Ext, um den Erweiterungsteil des Dateipfads abzurufen. Während des Programmiervorgangs müssen wir häufig die Erweiterung der Datei abrufen. Die Go-Sprache bietet eine sehr praktische Funktion path/filepath.Ext zum Implementieren dieser Funktion. In diesem Artikel wird erläutert, wie Sie diese Funktion verwenden, um den Erweiterungsteil eines Dateipfads abzurufen. Schauen wir uns zunächst ein einfaches Beispiel an: packagemainimport("fmt&q

Anhand welcher Dateitypen können diese identifiziert werden? Anhand welcher Dateitypen können diese identifiziert werden? Jul 19, 2022 pm 04:45 PM

Der Dateityp kann anhand der „Dateierweiterung“ identifiziert werden. Die Dateierweiterung ist ein Mechanismus oder Symbol, das das Betriebssystem zur Kennzeichnung von Dateitypen verwendet. Die Erweiterung ist fast ein wesentlicher Bestandteil jeder Datei. Wenn eine Datei keine Erweiterung hat, kann das Betriebssystem die Datei nicht identifizieren und nicht unterscheiden . Zu welchem ​​Typ gehört sie, daher ist es unmöglich zu bestimmen, welche Software zur Verarbeitung dieser Datei verwendet werden soll.

See all articles