Comment supprimer l'extension de fichier en php

藏色散人
Libérer: 2023-03-04 21:40:01
original
3342 Les gens l'ont consulté

Comment supprimer l'extension de fichier en PHP : 1. Utilisez la fonction pathinfo pour renvoyer une partie du nom complet du fichier ; 2. Utilisez la fonction basename pour supprimer l'extension du nom de fichier ; et les fonctions strrpos pour renvoyer aucune extension Le chemin complet et le nom de fichier du nom.

Comment supprimer l'extension de fichier en php

Recommandé : "Tutoriel vidéo PHP"

PHP supprime l'extension du nom de fichier (nom de fichier) de trois manières to Name (Extension)

Si vous avez un nom de fichier et que vous devez supprimer l'extension de PHP, il existe de nombreuses façons de le faire. Il existe trois méthodes ici.

Utilisez la fonction pathinfo()

La fonction pathinfo() renvoie un tableau contenant le nom de répertoire, le nom de base, l'extension et le nom de fichier. Alternativement, vous pouvez transmettre une constante PATHINFO_ et renvoyer cette partie du nom de fichier complet :

$filename ='filename.html';
$without_extension = pathinfo($filename, PATHINFO_FILENAME);
Copier après la connexion

Si le nom de fichier contient un chemin complet, seul le nom de fichier sans l'extension est renvoyé.

Utilisez la fonction basename()

Si l'extension est connue et est la même pour tous les noms de fichiers, vous pouvez passer le deuxième argument facultatif à basename() pour le dire pour supprimer cette extension du nom de fichier :

$filename ='filename.html';
$without_extension = basename($filename,'.html');
Copier après la connexion

Si le nom de fichier contient un chemin complet, seul le nom de fichier sans l'extension est renvoyé.

Utilisation de substr et strrpos

$filename ='filename.html';
$without_extension = substr($filename, 0, strrpos($filename, "."));
Copier après la connexion

Si le nom de fichier contient un chemin complet, renvoie le chemin complet et le nom de fichier sans extension. Vous pouvez utiliser basename() pour supprimer le chemin, par exemple :

basename(substr($filename, 0, strrpos($filename, ".")));
Copier après la connexion

bien que cela soit plus lent que d'utiliser pathinfo.

Comparaison de vitesse

Exécuter chacun de ces 10 000 000 de fois en boucle sur Mac en utilisant PHP 5.4 :

pathinfo:10.13秒
basename:7.87秒
substr / strrpos:6.05秒
basename(substr / strrpos):11.98秒
Copier après la connexion

Si le nom de fichier ne contient pas le chemin complet, ou si ce n'est pas important, les options substr/strrpos semblent être les plus rapides.

Si le nom de fichier contient un chemin et que vous ne voulez pas le chemin mais savez quelle extension vous souhaitez supprimer, le nom de base semble être le plus rapide.

Si le nom du fichier contient un chemin, vous n'avez pas besoin du chemin et vous ne savez pas quelle est l'extension, alors utilisez l'option pathinfo().

Conclusion

Il existe de nombreuses autres façons de procéder, certaines peuvent être plus rapides. Dans de nombreux cas, la vitesse n'est pas si importante (10 secondes pour exécuter pathinfo équivalent à 100 000 fois après tout). Le but de cet article est de montrer quelques façons de supprimer les extensions des noms de fichiers à l'aide de PHP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal