View All
View All
View All
View All
View All
View All
View All
View All
View All
View All
View All
View All
View All

Basename in PHP | PHP basename() Function

By Rohan Vats

Updated on Jul 03, 2023 | 8 min read | 6.4k views

Share:

Introduction

PHP has a function called basename that helps to fetch the filename present at the specified path. The function returns and prints the filename or the directory path passed in arguments. The procedure also displays the script name if the basename used is $0. Programmers use this function to check the files present at the specified location or use the program flow filenames.

Hence, the programmers use the basename function in PHPto find the files present at any location and get them printed on the console. The basename function is like any other built-in function or user-defined function in PHP, such as string functions, math functions, numeric functions, date functions, and many more.

Check out our free courses to get an edge over the competition. 

Basename Function in PHP

The basename is an in-built function in PHP, which returns the file name present at the path provided as an argument.

Syntax:

Below is the syntax to use the Basename function in PHP.

String basename($path, $suffix)

The function has two parameters, i.e., path and suffix.

  • $path: Path is a mandatory parameter and s of String type. This parameter specifies the path at which the file is to locate.
  • $suffix: Suffix is an optional parameter that hides the file extension if the file has a suffix.

Check out upGrad’s Advanced Certification in DevOps 

The function returns the file basename, which is present at the path passed as $path in the basename parameter.

Examples of Basename in PHP

Example1: The code prints the name of the file present at a specified location without using the optional parameter $suffix.

<?php

// Save the path in the $path variable

$path = “/ExampleProject1/Example1.php”;

// basename function finds the name of the file present at $path and saves it in //$fileName variable

$fileName = basename($path);

Check out upGrad’s Full Stack Development Bootcamp (JS/MERN)

// Prints the filename

Echo $fileName;

Echo “\n”

?>

Output:

Example1.php

Here, only the $path parameter is passed with the basename function call, so the complete file name gets printed.

Example2: The code prints the file’s name at the specified location when the optional parameter $suffix is passed.

<?php

// Save the path in the $path variable

$path = “/ExampleProject1/Example1.php”;

// Using the $suffix parameter so that the output contains only the filename, without //extension

$fileName = basename($path, “.php”);

Echo $fileName;

?>

Output:

Example1

Here, $suffix is passed with a function call, so only the file name gets printed without extension.

Example3: The code prints the name of the file present at the specified location with both versions of the basename function.

<?php

// Save the path in the $path variable

$path = “/Project1/team1/FirstProgram.php”;

// Using the $path parameter with basename function

$fileName = basename($path);

Echo $fileName;

Echo “\n” // It takes the cursor to next line

// Using the $path parameter with basename function

$fileName = basename($path, “.php”);

Echo $fileName;

?>

Output:

FirstProgram.php

FirstProgram

When only the $path is passed as a parameter, the complete filename gets printed. When the $suffix .php is passed with a function call, the .php gets hidden and only filename gets printed.

Coverage of AWS, Microsoft Azure and GCP services

Certification8 Months
View Program

Job-Linked Program

Bootcamp36 Weeks
View Program

Errors and Exception in Basename in PHP

It is indeed necessary to understand the functioning and usage of basename function in PHP, but it is also crucial to understand the exceptions to use the process accurately:

Basename function in PHP

Cannot identify the $path value given as ‘..’; however, it can recognise the single dot ‘.’. Double beads ‘..’ are only used in Linux that move the location from the current directory to the previous directory. As double dots ‘..’ is used in Linux only, sobasename in PHP only recognises the single drop ‘.’.

Basename function in PHP

Uses the $path passed as string and is not aware of the file system. It implies that the process only works on the way passed as a parameter irrespective of the filesystem type. The file system can be Mac, Linux, and Windows. As each of these file systems has a different format, and basename function cannot recognise the type of filesystem used. Therefore, the output can get wrong. Hence, it is recommended to pass parameters in the basename function.

Slashes are used as the separator in the directory path or to separate the folders. Windows platform can recognise both backslash (\) and forward-slash (/) as a separator in the directory path, while in other environments, only forward-slash (/) gets used. So, we should use slash cautiously while using the basename function in PHP.

Learn Software Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs, or Masters Programs to fast-track your career.

Handling Errors and Exceptions

When using the basename( ) function in PHP, it’s crucial to be aware of potential errors and exceptions. One common error occurs when an invalid file path is provided. This can lead to unexpected outcomes, such as an empty base name or incorrect results. To avoid such issues, it is essential to ensure that the file path is accurate and accessible.

By validating the file path and handling any potential errors or exceptions, you can maintain the reliability and integrity of your PHP code.

Syntax

The syntax of the basename in PHP file is straightforward and follows this structure:

basename(path, suffix)

In this syntax:

path: Represents the file path as a string.

suffix (optional): Denotes the suffix to be removed from the base name. It is also provided as a string.

By adhering to this syntax, you can effectively utilize the basename( ) function in your PHP code.

Understanding the Return Value

The basename( ) function in PHP returns the base name of the file, excluding the directory path. This extracted base name is useful when you need to isolate and work with the file name separately from the entire path.

The return value of the basename( ) function is a string, representing the base name of the file. This value can be assigned to a variable or directly utilized in your PHP program to perform further operations or display information to the user.

Example:

<?php

$path = “/var/www/html/index.php”;

$basename = basename($path, “.php”);

echo $basename;

?>

Live Demo:

https://www.example.com/  

Output:

index
In this example, the basename function removes the directory path and the suffix “.php” from the given file path.

Basename PHP in Javascript

In JavaScript, there is no built-in function like basename PHP. However, one can implement a similar function using JavaScript code. The basename PHP function returns the filename component of a path, removing any directories or slashes. The following example shows how you can achieve the same using JavaScript:

function basename(path) {

  // Normalize the path by replacing backslashes with forward slashes

  path = path.replace(/\\/g, ‘/’);

  // Get the last part of the path after the last slash

  var lastIndex = path.lastIndexOf(‘/’);

  var filename = path.substr(lastIndex + 1);

  // Return the filename

  return filename;

}

// Example usage

var fullPath = ‘/path/to/somefile.txt’;

var filename = basename(fullPath);

console.log(filename); //

Output: 

somefile.txt

Conclusion

This was all about the basename function in PHP. We hope you have a deep understanding of PHP’s basename, usage, syntax, and different exceptions. The exceptions should be considered before using the basename function so that the correct output can be expected from it.

If you’re interested to learn more about full-stack software development, check out upGrad & IIIT-B’s Executive PG Program in Full-stack Software Development, which is designed for working professionals and offers 500+ hours of rigorous training, 9+ projects, and assignments, IIIT-B Alumni status, practical hands-on capstone projects & job assistance with top firms.

Frequently Asked Questions (FAQs)

1. What is a basename() function in PHP?

2. How to work with files in PHP?

3. How to become a PHP developer?

Rohan Vats

408 articles published

Get Free Consultation

+91

By submitting, I accept the T&C and
Privacy Policy

India’s #1 Tech University

Executive PG Certification in AI-Powered Full Stack Development

77%

seats filled

View Program

Top Resources

Recommended Programs

upGrad

AWS | upGrad KnowledgeHut

AWS Certified Solutions Architect - Associate Training (SAA-C03)

69 Cloud Lab Simulations

Certification

32-Hr Training by Dustin Brimberry

View Program
upGrad

Microsoft | upGrad KnowledgeHut

Microsoft Azure Data Engineering Certification

Access Digital Learning Library

Certification

45 Hrs Live Expert-Led Training

View Program
upGrad

upGrad KnowledgeHut

Professional Certificate Program in UI/UX Design & Design Thinking

#1 Course for UI/UX Designers

Bootcamp

3 Months

View Program