[php]basename

PHP의 basename 함수

basename 함수는 주어진 파일 경로에서 파일의 이름 부분만 추출하는 PHP 내장 함수입니다. 파일 경로에서 디렉토리 경로를 제거하여 파일 이름만 반환합니다. 이 함수는 특히 파일 업로드 또는 경로 처리 작업에 유용하게 사용됩니다.

기본 문법:

string basename ( string $path [, string $suffix ] )
  • $path: 파일 경로 또는 파일 이름을 나타내는 문자열.
  • $suffix (옵션): 제거할 접미사 문자열. 파일 이름이 해당 접미사로 끝나는 경우 이를 제거합니다.

샘플 코드:

$file_path = '/var/www/html/uploads/image.jpg';
$filename = basename($file_path);
echo $filename; // 출력 결과: image.jpg

basename 함수와 다른 함수와 사용하는 응용 코드

1. pathinfo 함수와 함께 사용:

pathinfo 함수를 사용하여 파일의 확장자를 추출할 수 있습니다.

$file_path = '/var/www/html/uploads/image.jpg';
$filename = basename($file_path);
$extension = pathinfo($file_path, PATHINFO_EXTENSION);
echo "Filename: $filename, Extension: $extension"; // 출력 결과: Filename: image.jpg, Extension: jpg

2. explode 함수와 함께 사용:

explode 함수를 사용하여 파일 경로를 디렉토리와 파일 이름으로 분리할 수 있습니다.

$file_path = '/var/www/html/uploads/image.jpg';
$path_parts = explode('/', $file_path);
$filename = end($path_parts);
echo $filename; // 출력 결과: image.jpg

조건문과 반복문과 함께 사용하는 샘플 코드

아래 예제는 디렉토리에 있는 파일들의 이름을 리스트로 출력합니다.

$directory = '/var/www/html/uploads/';
$files = scandir($directory);

foreach ($files as $file) {
    if (!is_dir($file)) {
        $filename = basename($file);
        echo "$filename\n";
    }
}

성능 향상을 위한 팁

  • basename 함수는 경로에서 파일 이름만 추출하는 단순한 함수이므로, 성능에 큰 영향을 주지 않습니다.
  • 성능을 향상시키려면, 파일 경로 처리에 더 많은 시간이 소요되는 다른 부분(예: 파일 I/O 작업)을 최적화하는 것이 중요합니다.

게시됨

카테고리

,

작성자