file_exists()
Last updated onWhether you are just trying to keep your app from crashing or making sure your users’ uploads don’t accidentally overwrite each other’s files, php file_exists
is like a simple yet reliable tool in your PHP toolkit.
In this tutorial, you will learn what file_exists is and how it works. Let's get started.
What is php file_exists?
php file_exists
is a built-in function. It takes a file path as input and checks if that file or directory is sitting there on your server, waiting to be used. If it’s there,
returns file_exists
. If it’s not, you get true
. This might seem small, but it can prevent a ton of problems. false
Whenever you’re handling user uploads, dynamic file includes, or any process where files might pop in and out file_exists can be fit for this task.
Here is its syntax:
file_exists($path);
Just put in the file path you want to check. If the file or directory is there,
will give you file_exists
. If not, it’ll return true
. Here’s a quick example:false
if (file_exists("example.txt")) {
echo "The file exists!";
} else {
echo "File not found.";
}
The file_exists doesn’t actually open the file. It just checks the file system to see if the file or directory is there where you specified. But here’s something to keep in mind:
is case-sensitive on Linux but case-insensitive on Windows. So if you’re working across different operating systems, double-check those file paths to prevent any issues.file_exists
Another thing else,
works for both files and directories. But, if you want to make sure you’re dealing with a file (not a directory), use file_exists
with is_file or is_dir to be extra sure.file_exists
In the following section, you will see more examples. Let's move on.
Examples of PHP file_exists
In the example, we are going to prevent duplicate uploads:
$uploadDir = "uploads/";
$filename = $_FILES["userfile"]["name"];
$filepath = $uploadDir . $filename;
if (file_exists($filepath)) {
$newFileName = time() . "_" . $filename;
$newFilePath = $uploadDir . $newFileName;
move_uploaded_file($_FILES["userfile"]["tmp_name"], $newFilePath);
echo "File already exists, so it was saved as $newFileName.";
} else {
move_uploaded_file($_FILES["userfile"]["tmp_name"], $filepath);
echo "File uploaded successfully!";
}
checks if the file name is already taken. If it is, the code adds a timestamp to create a unique name and saves it as a new file. So, no overwrites.file_exists
Here, we should check first if the file exists before including it in another PHP file:
$filename = "config.php";
if (file_exists($filename)) {
include $filename;
} else {
echo "Required configuration file is missing!";
}
With this code, you are safe from those annoying “file not found” errors. You’ll know right away if
is missing.config.php
Let's summarize it.
Wrapping Up
PHP
is a simple way to check if a file or directory exists. Here’s a quick recap:file_exists
- Definition:
php
checks if a file or directory is present on the server.file_exists
- Syntax: Just use
, wherefile_exists($path);
is the file or directory you want to check.$path
- How It Works: It verifies existence without actually opening the file.
Thank you for reading to the end. Happy coding!
Frequently Asked Questions (FAQs)
What is PHP file_exists?
How does file_exists work in PHP?
What is the syntax for file_exists in PHP?
Does file_exists work for directories?
Is file_exists case-sensitive in PHP?
Can file_exists prevent duplicate file uploads?
How can I use file_exists to prevent missing file errors in PHP?
When should I use PHP file_exists?