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

8 Exciting Full Stack Coding Project Ideas &amp; Topics For Beginners
4053
A Full stack developer is an engineer who can design and develop an end-to-end application independently by handling all the work of coding, databases
Read More

by upGrad

19 Feb 2024

17 Interesting HTML Project Ideas &#038; Topics For Beginners [2024]
414942
Summary In this article, you will learn 10 Interesting HTML Project Topics. Take a glimpse below. A tribute page A survey form Technical documentati
Read More

by Rohan Vats

19 Feb 2024

How to Open json File in Excel
96591
What is JSON? JSON (JavaScript Object Notation) is a file format that is used for storing and exchanging data in the network. It is used to send data
Read More

by Rohan Vats

19 Feb 2024

JSP vs Servlet: Difference Between JSP &#038; Servlet [2024]
52596
Websites are collections of static files, for example, images, graphics, and HTML files. These websites are referred to as web applications if they pr
Read More

by Rohan Vats

19 Feb 2024

Java Developer Salary in India in 2024 [For Freshers &#038; Experienced]
900555
Wondering what is the range of Java developer salary in India? From choosing your first programming language to writing apps for Android and several
Read More

by Rohan Vats

19 Feb 2024

Polymorphism In OOPS: What is Polymorphism [Detailed Explanation]
124375
Polymorphism in OOPs is inseparable and an essential concept of every object-oriented programming language. An object or reference basically can take
Read More

by Rohan Vats

19 Feb 2024

Literals In Java: Types of Literals in Java [With Examples]
8151
Summary: In this article, you will learn about Literals in Java. Literals in Java Integral Literals Floating-Point Literals Char Literals String Lit
Read More

by Rohan Vats

19 Feb 2024

Top 30 Exception Handling Interview Questions and Answers [For Freshers &amp; Experienced]
35835
Exception handling is a concept that is implemented in algorithms to handle possible runtime errors, which may disrupt the normal flow of a program. S
Read More

by Rohan Vats

19 Feb 2024

Top 40 MySQL Interview Questions &#038; Answers For Beginners &#038; Experienced [2024]
129835
Have a Data engineering or data science interview coming up? Need to practice some of the most asked MySQL interview questions? The article compiles t
Read More

by Rohan Vats

19 Feb 2024

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