How to download a file and modify its name using PHP
PHP is a server-side programming language that provides many convenient functions to operate files. In web applications, sometimes you need to download a file and save it to the user's device. In some cases, users may wish to rename downloaded files for easier management and identification. In this article, we will explore how to download a file and modify its name using PHP.
File Download
In PHP, you can download any type of file using a special function called "header". When using the header function, you must ensure that nothing is produced before any output. In addition, a correct Content-Disposition header needs to be set to instruct the browser to download the file. The following is a sample code for downloading a file using PHP:
<?php $file_url = 'http://example.com/file.pdf'; header('Content-Type: application/octet-stream'); header("Content-Transfer-Encoding: Binary"); header("Content-disposition: attachment; filename=\"" . basename($file_url) . "\""); readfile($file_url); ?>
The above code will download a PDF file named "file.pdf". To download different types of files, you can change the Content-Type. For example, for image files, you can use Content-Type: image/jpeg or Content-Type: image/png.
This code uses the readfile function to download the file to the user device. When dealing with larger files, it is recommended to use more efficient methods, such as reading the file block by block and outputting the data.
File Renaming
To download a file and rename it, you can add some code to modify the filename in the Content-Disposition header. Typically, the Content-Disposition header specifies the original name of the downloaded file. Here is a code example:
<?php $file_url = 'http://example.com/file.pdf'; header('Content-Type: application/octet-stream'); header("Content-Transfer-Encoding: Binary"); header("Content-disposition: attachment; filename=\"new_name.pdf\""); readfile($file_url); ?>
You can replace "new_name.pdf" with any file name you want. This will ensure that the new filename is used when downloading the file, rather than the original filename.
If you want to dynamically generate file names, you can use some functions in PHP. For example, you can add the current date/time to the file name:
<?php $file_url = 'http://example.com/file.pdf'; $date = date("Y-m-d"); $new_filename = $date . "_new_file.pdf"; header('Content-Type: application/octet-stream'); header("Content-Transfer-Encoding: Binary"); header("Content-disposition: attachment; filename=\"$new_filename\""); readfile($file_url); ?>
In the above example, the code adds the current date to the file name so that the downloaded file name looks like "2022-01-01_new_file .pdf".
Conclusion
PHP provides many features to web application developers to handle files. Downloading files is one of the common requirements in web applications and can be easily achieved using features in PHP. By setting the Content-Disposition header, you can control the downloaded file name. In this article, we show you how to download a file and change the file name, hope it helps.
The above is the detailed content of How to download a file and modify its name using PHP. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8's JIT compilation enhances performance by compiling frequently executed code into machine code, benefiting applications with heavy computations and reducing execution times.

The article discusses OWASP Top 10 vulnerabilities in PHP and mitigation strategies. Key issues include injection, broken authentication, and XSS, with recommended tools for monitoring and securing PHP applications.

The article discusses securing PHP file uploads to prevent vulnerabilities like code injection. It focuses on file type validation, secure storage, and error handling to enhance application security.

The article discusses symmetric and asymmetric encryption in PHP, comparing their suitability, performance, and security differences. Symmetric encryption is faster and suited for bulk data, while asymmetric is used for secure key exchange.

Article discusses retrieving data from databases using PHP, covering steps, security measures, optimization techniques, and common errors with solutions.Character count: 159

The article discusses implementing robust authentication and authorization in PHP to prevent unauthorized access, detailing best practices and recommending security-enhancing tools.

Prepared statements in PHP enhance database security and efficiency by preventing SQL injection and improving query performance through compilation and reuse.Character count: 159

The article discusses the mysqli_query() and mysqli_fetch_assoc() functions in PHP for MySQL database interactions. It explains their roles, differences, and provides a practical example of their use. The main argument focuses on the benefits of usin
