이전 글 "PHP 함수 응용: 배열을 사용하여 파일 확장자 출력"에서 배열을 사용하여 파일 확장자를 얻는 두 가지 방법을 소개했습니다. 이번에는 계속해서 파일 확장자를 얻는 방법을 소개하고 문자열 기능을 사용하는 방법을 살펴보겠습니다. 관심 있는 친구들은 그것에 대해 배울 수 있습니다~
우선 위의 내용을 떠올려 보면 완전한 파일 형식을 이해할 수 있습니다. 문자 "." 앞의 내용, 문자 "." 뒤의 내용, 문자 "." 뒤의 내용 이렇게 세 부분으로 나눌 수 있습니다.
이번에도 파일 확장자를 얻으려면 문자 ".
".
”,通过它来获取文件扩展名!下面我们会给大家介绍3种利用字符串函数获取文件扩展名的方法。
首先我们来看看第一种利用字符串函数获取文件扩展名的方法
<?php function getExtension($filename){ $ext = strrchr($filename,'.'); return $ext; } $filename="dir/upload/image.gif"; echo getExtension($filename); ?>
分析一下上面的关键代码:
strrchr($filename,'.')
的意思为返回字符串$filename
中从字符“.
”开始到字符串结尾的所有字符。因此输出结果为:
接下来我们看看第二种利用字符串函数获取文件扩展名的方法
<?php function getExtension($filename){ $pos = strrpos($filename, '.'); $ext = substr($filename, $pos); return $ext; } $filename="dir/upload/image.gif"; echo getExtension($filename); ?>
输出结果为:
OK,分析一下上面的关键代码:
首先我们使用strrpos($filename, '.')
获取到字符“.”在字符串$filename
中最后一次出现的位置$pos
,然后将$pos
作为substr()函数的第二个参数。
substr($filename, $pos)
会根据$pos
设置的位置开始截取字符串$filename
,返回从$pos
开始到字符串结尾的所有字符。因此会输出“.gif
”。
如果想要获取不包括字符“.”的扩展名,即返回“gif
”,那么可以设置substr($filename, $pos+1)
,这样输出结果就为:
最后我们看看第三种利用字符串函数获取文件扩展名的方法
<?php function getExtension($filename){ $filename = strrev($filename); $ext = strstr($str,'.',true); return strrev($ext); } $filename="dir/upload/image.gif"; echo getExtension($filename); ?>
分析一下上面的关键代码:
strstr($filename,'.',true)
可以获取字符串$filename
中从开头到 字符“.
” 第一次出现前的所有字符,即获取 字符“.
”之前的内容,输出一下看看:
这和我们的预期不符合,此时我想了一下,既然是获取 字符“.”之前的内容,那么就把字符串反转一下,让表示扩展名的那几个字符在字符“.”之前不久行了!
因此,先使用strrev($filename)
来反转字符串$filename
,再使用strstr($filename,'.',true)
来获取 字符“.”之前的内容,这次输出看看结果:
可以了,获取到颠倒的扩展名了,调用strrev($filename)
를 사용해야 합니다! 아래에서는 문자열 함수를 사용하여 파일 확장자를 얻는 3가지 방법을 소개합니다.
먼저 문자열 함수를 사용하여 파일 확장자를 얻는 첫 번째 방법을 살펴보겠습니다.
strrchr($filename,'.')
문자 ".
"부터 문자열 끝까지 $filename
문자열의 모든 문자를 반환한다는 의미입니다. 따라서 출력 결과는 다음과 같습니다. 🎜🎜다음으로 문자열 함수를 사용하여 파일 확장자를 얻는 두 번째 방법을 살펴보겠습니다. 🎜🎜rrreee🎜출력 결과는 다음과 같습니다. 🎜🎜🎜🎜좋아, 위의 키 코드를 분석하세요: 🎜strrpos($filename, '.')
를 사용하여 문자 "."가 문자열 $filename
에 있는 마지막 시간을 가져옵니다. 나타나는 위치는 $pos
이고, substr() 함수의 두 번째 매개변수로 $pos
를 사용합니다. 🎜substr($filename, $pos)
는 $pos$filename
문자열을 가로채기 시작합니다. /code> >, $pos
부터 문자열 끝까지의 모든 문자를 반환합니다. 따라서 ".gif
"가 출력됩니다. 🎜gif
"를 반환하려는 경우 substr을 설정할 수 있습니다. ($filename, $pos +1)
이므로 출력 결과는 다음과 같습니다. 🎜🎜🎜🎜🎜마지막으로 문자열 함수를 사용하여 파일 확장자를 얻는 세 번째 방법을 살펴보겠습니다🎜🎜rrreee🎜위의 키 코드를 분석해 보세요: 🎜🎜🎜strstr( $filename,'.',true) 는 $filename 문자열에서 문자 "<code>.
"의 처음부터 첫 번째 발생까지의 모든 문자를 가져올 수 있습니다. . 즉, ".
" 문자 앞의 콘텐츠를 가져와서 출력합니다: 🎜🎜🎜🎜이건 저희의 기대에 부합하지 않는 부분입니다. 이때 생각을 해봤습니다. "." 문자 앞에 내용을 입력한 다음 확장자를 나타내는 문자가 "." 문자 앞에 오래 가지 않도록 문자열을 반대로 바꾸세요! 🎜🎜그러므로 먼저 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!