Blog_Banner_Asset
    Homebreadcumb forward arrow iconBlogbreadcumb forward arrow iconFull Stack Developmentbreadcumb forward arrow iconBasename in PHP | PHP basename() Function

Basename in PHP | PHP basename() Function

Last updated:
10th Jun, 2023
Views
Read Time
8 Mins
share image icon
In this article
Chevron in toc
View All
Basename in PHP | PHP basename() Function

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.

Ads of upGrad blog

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;

?>

Explore Our Software Development Free Courses

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.

In-Demand Software Development Skills

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 ‘.’.

Read our Popular Articles related to Software Development

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’;

Ads of upGrad blog

var filename = basename(fullPath);

console.log(filename); // Output: somefile.txt

Explore our Popular Software Engineering Courses

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.

Profile

Rohan Vats

Blog Author
Software Engineering Manager @ upGrad. Passionate about building large scale web apps with delightful experiences. In pursuit of transforming engineers into leaders.

Frequently Asked Questions (FAQs)

1What is a basename() function in PHP?

In PHP, basename is the name of the last directory in the path to a file, meaning the portion of the path that comes after the last slash. The basename() function returns a file name component, without any path information. Basename() function is used in PHP programming language. This is useful in cases when you work with reading or writing data into files in PHP. There might be cases where you want to read from a file in the same directory where your current file is. Also, if you want to specify the name of a file based on the name of the directory, you can extract the folder name using the basename() function and rename the file accordingly.

2How to work with files in PHP?

The file functions of PHP help you to work with the files, keeping in view the safety, security, and ease. The PHP file functions, when used in combination with FTP functions, can be used for reading, writing and uploading and downloading the files from the server through the Internet. The basic syntax of the PHP file functions is $_FILES. These functions are used to access the uploaded files.

3How to become a PHP developer?

There are two ways to become a PHP developer. One is the formal way and the other is self-learning. If you want to become a PHP developer by passing a certification exam, then you need to go to a good college and earn a degree in computer science. Once you are done, you can find a job and start learning PHP on the job. The disadvantage of the above method is that you would have to wait for the job to give you an opportunity to start learning. Another disadvantage is that you could get stuck with a salary job and may not have enough time to learn PHP. If you want to become a PHP developer by self-learning, then you need to spend time on the Internet to find resources. After that, you need to allocate some time every day to learn PHP. It all depends on you, but I think the self-learning way is better than the formal way.

Explore Free Courses

Suggested Blogs

Top 7 Node js Project Ideas &#038; Topics
31621
Node.JS is a part of the famous MEAN stack used for web development purposes. An open-sourced server environment, Node is written on JavaScript and he
Read More

by Rohan Vats

05 Mar 2024

How to Rename Column Name in SQL
46979
Introduction We are surrounded by Data. We used to store information on paper in enormous file organizers. But eventually, we have come to store it o
Read More

by Rohan Vats

04 Mar 2024

Android Developer Salary in India in 2024 [For Freshers &#038; Experienced]
901363
Wondering what is the range of Android Developer Salary in India? Software engineering is one of the most sought after courses in India. It is a reno
Read More

by Rohan Vats

04 Mar 2024

7 Top Django Projects on Github [For Beginners &amp; Experienced]
52249
One of the best ways to learn a skill is to use it, and what better way to do this than to work on projects? So in this article, we’re sharing t
Read More

by Rohan Vats

04 Mar 2024

Salesforce Developer Salary in India in 2024 [For Freshers &#038; Experienced]
909263
Wondering what is the range of salesforce salary in India? Businesses thrive because of customers. It does not matter whether the operations are B2B
Read More

by Rohan Vats

04 Mar 2024

15 Must-Know Spring MVC Interview Questions
34783
Spring has become one of the most used Java frameworks for the development of web-applications. All the new Java applications are by default using Spr
Read More

by Arjun Mathur

04 Mar 2024

Front End Developer Salary in India in 2023 [For Freshers &#038; Experienced]
902421
Wondering what is the range of front end developer salary in India? Do you know what front end developers do and the salary they earn? Do you know wh
Read More

by Rohan Vats

04 Mar 2024

Method Overloading in Java [With Examples]
26391
Java is a versatile language that follows the concepts of Object-Oriented Programming. Many features of object-oriented programming make the code modu
Read More

by Rohan Vats

27 Feb 2024

50 Most Asked Javascript Interview Questions &#038; Answers [2024]
4455
Javascript Interview Question and Answers In this article, we have compiled the most frequently asked JavaScript Interview Questions. These questions
Read More

by Kechit Goyal

26 Feb 2024

Schedule 1:1 free counsellingTalk to Career Expert
icon
footer sticky close icon