> 백엔드 개발 > PHP 문제 > PHP에서 파일 확장자를 제거하는 방법

PHP에서 파일 확장자를 제거하는 방법

藏色散人
풀어 주다: 2023-03-04 21:40:01
원래의
3428명이 탐색했습니다.

PHP에서 파일 확장자를 제거하는 방법: 1. 전체 파일 이름의 일부를 반환하려면 pathinfo 함수를 사용하세요. 2. 파일 이름에서 확장자를 제거하려면 basename 함수를 사용하세요. 3. 전체 경로를 반환하려면 substr 및 strrpos 함수를 사용하세요. 확장자와 파일 이름이 없습니다.

PHP에서 파일 확장자를 제거하는 방법

권장: "PHP 비디오 튜토리얼"

PHP에서 파일 이름에서 확장자를 제거하는 세 가지 방법

파일 이름이 있으면 PHP에서 제거해야 합니다. 에서 확장자를 제거합니다. 이를 수행하는 방법. 여기에는 세 가지 방법이 있습니다.

pathinfo() 함수 사용

pathinfo() 함수는 dirname, basename, 확장자 및 파일 이름이 포함된 배열을 반환합니다. 또는 PATHINFO_ 상수를 전달하고 전체 파일 이름의 해당 부분을 반환할 수 있습니다.

$filename ='filename.html';
$without_extension = pathinfo($filename, PATHINFO_FILENAME);
로그인 후 복사

파일 이름에 전체 경로가 포함되어 있으면 확장자가 없는 파일 이름만 반환됩니다.

basename() 함수를 사용하세요.

확장자가 알려져 있고 모든 파일 이름에 대해 동일한 경우 basename()에 두 번째 선택적 인수를 전달하여 파일 이름에서 해당 확장자를 제거하도록 지시할 수 있습니다. 확장자:

$filename ='filename.html';
$without_extension = basename($filename,'.html');
로그인 후 복사

파일 이름에 전체 경로가 포함되어 있으면 확장자가 없는 파일 이름만 반환됩니다.

substr 및 strrpos를 사용하세요

$filename ='filename.html';
$without_extension = substr($filename, 0, strrpos($filename, "."));
로그인 후 복사

파일 이름에 전체 경로가 포함되어 있으면 확장자 없이 전체 경로와 파일 이름을 반환하세요. basename()을 사용하여 경로를 제거할 수 있습니다(예:

basename(substr($filename, 0, strrpos($filename, ".")));
로그인 후 복사

). 하지만 pathinfo를 사용하는 것보다 속도가 느립니다.

속도 비교

PHP 5.4를 사용하여 Mac에서 루프로 각각 10,000,000번 실행하세요.

pathinfo:10.13秒
basename:7.87秒
substr / strrpos:6.05秒
basename(substr / strrpos):11.98秒
로그인 후 복사

파일 이름에 전체 경로가 포함되어 있지 않거나 중요하지 않은 경우 substr /strrpos 옵션이 가장 빠른 것 같습니다.

파일 이름에 경로가 포함되어 있고 경로를 원하지 않지만 제거하려는 확장자가 무엇인지 알고 있는 경우 basename이 가장 빠른 것 같습니다.

파일 이름에 경로가 포함되어 있으면 경로가 필요하지 않고 확장자가 무엇인지 모르는 경우 pathinfo() 옵션을 사용하십시오.

결론

이 작업을 수행하는 다른 방법이 많이 있으며 일부는 더 빠를 수도 있습니다. 대부분의 경우 속도는 그다지 중요하지 않을 수 있습니다(결국 pathinfo를 실행하는 데 10초가 100,000번이 됩니다). 이 기사의 목적은 PHP를 사용하여 파일 이름에서 확장자를 제거하는 몇 가지 방법을 보여주는 것입니다.

위 내용은 PHP에서 파일 확장자를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿