PHP에서 파일 확장자를 제거하는 방법: 1. 전체 파일 이름의 일부를 반환하려면 pathinfo 함수를 사용하세요. 2. 파일 이름에서 확장자를 제거하려면 basename 함수를 사용하세요. 3. 전체 경로를 반환하려면 substr 및 strrpos 함수를 사용하세요. 확장자와 파일 이름이 없습니다.
권장: "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 중국어 웹사이트의 기타 관련 기사를 참조하세요!