Maison >développement back-end >tutoriel php >L'application de fonction PHP utilise un tableau pour afficher l'extension de fichier
Dans l'article précédent, nous avons présenté la méthode d'utilisation de PHP pour calculer le nombre total de jours pour une année, un mois et un jour donnés. Si vous êtes intéressé, vous pouvez cliquer sur le lien pour lire → "Comment calculer le total. nombre de jours pour une année, un mois et un jour donnés via PHP". Cette fois, nous allons présenter comment utiliser PHP pour obtenir l'extension de fichier. Les amis dans le besoin peuvent en apprendre davantage ~
Nous avons une telle URL de fichier :
dir/upload/image.jpg
Comment changer l'extension de fichier .jpg
Ou qu'en est-il de la sortie jpg
? Idée d'implémentation : .jpg
或者 jpg
输出呢?实现思想:
一个完整的文件的格式为:文件名.扩展名
。因此,我们可以根据字符“.
”来将文件url分成三个部分:字符“.”之前的内容、字符“.”、字符“.”之后的内容。我们只需要获取 字符“.”之后的内容 即可。
下面我们来介绍2种利用数组来获取文件扩展名的方法。
首先我们来看看第一种获取文件扩展名的方法。
<?php function getExtension($filename) { $arr = explode('.',$filename); return array_pop($arr); } $filename="dir/upload/image.jpg"; echo getExtension($filename); ?>
输出结果:
OK!下面分析一下上面的代码:
首先使用explode('.',$filename)
根据分割符“.”来分割$filename
字符串,并将子串传入数组。我们使用var_dump($arr)
输出这个数组看看:
可以看出有两个元素,末尾的数组元素就是需要获取的扩展名。
这样我们直接使用内置函数array_pop($arr)
来获取$arr
数组最后一个元素即可需要获取的扩展名。输出array_pop($arr)
,看看结果:
echo array_pop($arr);
接下来我们看看第二种获取文件扩展名的方法。
<?php function getExtension($filename){ $arr = pathinfo($filename); $ext = $arr['extension']; return $ext; } $filename="dir/upload/image.jpg"; echo getExtension($filename); ?>
输出结果:
OK!也可以获取扩展名,下面分析一下上面的代码:
pathinfo($filename)
可以以数组的形式返回关于文件路径的信息,该函数返回的数组元素有:
[dirname]
:目录路径
[basename]
:文件名
[extension]
:文件后缀名
[filename]
:不包含后缀的文件名
我们使用var_dump($arr)
输出这个数组,看看结果:
可以看出键名为“extension
”的数组元素的键值就是我们需要获取的文件扩展名“jpg
”。这样我们可以直接使用$arr['extension']
filename.extension
. Par conséquent, nous pouvons diviser l'URL du fichier en trois parties en fonction du caractère ".
: Le contenu avant le caractère ".", Le caractère "." , Le contenu après le caractère ".". Il suffit d'obtenir le contenu après le caractère ".". Présentons 2 méthodes d'utilisation des tableaux pour obtenir des extensions de fichiers.
Regardons d’abord la première façon d’obtenir l’extension de fichier.rrreeeRésultat de sortie :
explode('.',$filename)
pour diviser la chaîne $filename
selon le séparateur ".", et ajoutez le substrings La chaîne est passée dans le tableau. Utilisons var_dump($arr)
pour afficher ce tableau et jetons un œil : 🎜🎜🎜🎜On peut voir qu'il y a deux éléments, et l'élément de tableau à la fin est l'extension qui doit être obtenue. 🎜🎜De cette façon, nous utilisons directement la fonction intégrée array_pop($arr)
pour obtenir le dernier élément du tableau $arr
, qui est l'extension qui a besoin à obtenir. Sortez array_pop($arr)
et voyez le résultat : 🎜rrreee🎜🎜🎜Examinons ensuite la deuxième méthode pour obtenir l'extension de fichier. 🎜rrreee🎜Résultat de sortie : 🎜🎜🎜🎜OK ! Vous pouvez également obtenir l'extension. Analysons le code ci-dessus : 🎜🎜pathinfo($filename)
peut renvoyer des informations sur le chemin du fichier sous la forme d'un tableau. Les éléments du tableau renvoyés par cette fonction sont : 🎜[dirname]
: Chemin du répertoire🎜[basename] code> : Nom du fichier🎜
[extension]
: Nom du suffixe du fichier🎜[filename]
: Fichier sans suffixe Name🎜var_dump($arr)
pour afficher ce tableau et voir le résultat : 🎜🎜🎜🎜Vous pouvez voir le tableau avec le nom de clé "extension code>" La valeur clé de l'élément est l'extension de fichier "<code>jpg
" que nous devons obtenir. De cette façon, nous pouvons utiliser directement $arr['extension']
pour accéder à l'élément du tableau avec le nom de clé "extension" et obtenir l'extension du fichier. 🎜🎜D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je recommande un tutoriel vidéo gratuit sur les tableaux PHP : 🎜Explication vidéo de la fonction tableau de fonctions PHP🎜, venez apprendre ! 🎜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!