>백엔드 개발 >PHP 튜토리얼 >파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

青灯夜游
青灯夜游원래의
2021-08-18 19:06:013672검색

이전 글 "PHP 함수 응용: 배열을 사용하여 파일 확장자 출력"에서 배열을 사용하여 파일 확장자를 얻는 두 가지 방법을 소개했습니다. 이번에는 계속해서 파일 확장자를 얻는 방법을 소개하고 문자열 기능을 사용하는 방법을 살펴보겠습니다. 관심 있는 친구들은 그것에 대해 배울 수 있습니다~

우선 위의 내용을 떠올려 보면 완전한 파일 형식을 이해할 수 있습니다. 문자 "." 앞의 내용, 문자 "." 뒤의 내용, 문자 "." 뒤의 내용 이렇게 세 부분으로 나눌 수 있습니다.

이번에도 파일 확장자를 얻으려면 문자 ".".,通过它来获取文件扩展名!下面我们会给大家介绍3种利用字符串函数获取文件扩展名的方法。

首先我们来看看第一种利用字符串函数获取文件扩展名的方法

<?php
function getExtension($filename){
         $ext = strrchr($filename,&#39;.&#39;);
         return $ext;
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>

分析一下上面的关键代码:

strrchr($filename,'.')的意思为返回字符串$filename中从字符“.”开始到字符串结尾的所有字符。因此输出结果为:

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

接下来我们看看第二种利用字符串函数获取文件扩展名的方法

<?php
function getExtension($filename){
    $pos = strrpos($filename, &#39;.&#39;);
    $ext = substr($filename, $pos);
    return $ext;
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>

输出结果为:

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

OK,分析一下上面的关键代码:

  • 首先我们使用strrpos($filename, '.')获取到字符“.”在字符串$filename中最后一次出现的位置$pos,然后将$pos作为substr()函数的第二个参数。

  • substr($filename, $pos)会根据$pos设置的位置开始截取字符串$filename,返回从$pos开始到字符串结尾的所有字符。因此会输出“.gif”。

如果想要获取不包括字符“.”的扩展名,即返回“gif”,那么可以设置substr($filename, $pos+1),这样输出结果就为:

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

最后我们看看第三种利用字符串函数获取文件扩展名的方法

<?php
function getExtension($filename){
    $filename = strrev($filename);
    $ext = strstr($str,&#39;.&#39;,true);
    return strrev($ext);
}
$filename="dir/upload/image.gif";
echo getExtension($filename);
?>

分析一下上面的关键代码:

strstr($filename,'.',true)可以获取字符串$filename中从开头到 字符“.” 第一次出现前的所有字符,即获取 字符“.”之前的内容,输出一下看看:

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

这和我们的预期不符合,此时我想了一下,既然是获取 字符“.”之前的内容,那么就把字符串反转一下,让表示扩展名的那几个字符在字符“.”之前不久行了!

因此,先使用strrev($filename)来反转字符串$filename,再使用strstr($filename,'.',true)来获取 字符“.”之前的内容,这次输出看看结果:

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

可以了,获取到颠倒的扩展名了,调用strrev($filename)를 사용해야 합니다! 아래에서는 문자열 함수를 사용하여 파일 확장자를 얻는 3가지 방법을 소개합니다.

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션먼저 문자열 함수를 사용하여 파일 확장자를 얻는 첫 번째 방법을 살펴보겠습니다.

rrreee

위의 키 코드를 분석하세요:

strrchr($filename,'.') 문자 "."부터 문자열 끝까지 $filename 문자열의 모든 문자를 반환한다는 의미입니다. 따라서 출력 결과는 다음과 같습니다.

파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션

🎜🎜다음으로 문자열 함수를 사용하여 파일 확장자를 얻는 두 번째 방법을 살펴보겠습니다. 🎜🎜rrreee🎜출력 결과는 다음과 같습니다. 🎜🎜파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션🎜🎜좋아, 위의 키 코드를 분석하세요: 🎜
  • 🎜먼저 strrpos($filename, '.')를 사용하여 문자 "."가 문자열 $filename에 있는 마지막 시간을 가져옵니다. 나타나는 위치는 $pos이고, substr() 함수의 두 번째 매개변수로 $pos를 사용합니다. 🎜
  • 🎜substr($filename, $pos)$pos$filename 문자열을 가로채기 시작합니다. /code> >, $pos부터 문자열 끝까지의 모든 문자를 반환합니다. 따라서 ".gif"가 출력됩니다. 🎜
🎜문자 "."를 포함하지 않는 확장명, 즉 "gif"를 반환하려는 경우 substr을 설정할 수 있습니다. ($filename, $pos +1)이므로 출력 결과는 다음과 같습니다. 🎜🎜파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션🎜🎜🎜마지막으로 문자열 함수를 사용하여 파일 확장자를 얻는 세 번째 방법을 살펴보겠습니다🎜🎜rrreee🎜위의 키 코드를 분석해 보세요: 🎜🎜🎜strstr( $filename,'.',true) 는 $filename 문자열에서 문자 "<code>."의 처음부터 첫 번째 발생까지의 모든 문자를 가져올 수 있습니다. . 즉, "." 문자 앞의 콘텐츠를 가져와서 출력합니다: 🎜🎜파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션🎜🎜이건 저희의 기대에 부합하지 않는 부분입니다. 이때 생각을 해봤습니다. "." 문자 앞에 내용을 입력한 다음 확장자를 나타내는 문자가 "." 문자 앞에 오래 가지 않도록 문자열을 반대로 바꾸세요! 🎜🎜그러므로 먼저 strrev($filename)을 사용하여 $filename 문자열을 뒤집은 다음 strstr($filename,'.',true)를 사용하여 문자 "." 이전의 콘텐츠를 가져오려면 이번에 출력하여 결과를 확인하세요. 🎜🎜<img.php.cn .png title="1629284294391099.png" alt="파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션"></img.php.cn>🎜🎜끝입니다. 확장자가 반전되었습니다. 문자열을 다시 반전하려면 <code>strrev($filename)를 호출하세요. . 이런 식으로 일반 확장이 얻어집니다. 출력 결과를 살펴보세요. 🎜🎜🎜🎜🎜🎜그렇습니다. 다른 내용을 알고 싶다면 여기를 클릭하세요. → →🎜php 비디오 튜토리얼🎜🎜🎜마지막으로 클래식 강좌인 "🎜PHP 문자열 처리(옥소녀심경편)🎜"을 읽어보시길 추천합니다. 무료입니다~ 와서 배워보세요! 🎜

위 내용은 파일 확장자를 추출하기 위해 문자열 함수를 사용하는 PHP 함수 애플리케이션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.