Hướng dẫn upload image and rename php - tải lên hình ảnh và đổi tên php

Tôi không đồng ý với câu trả lời của @Alexander.plutov. Bạn không phải lưu một tệp, sau đó sao chép nó, sau đó hủy liên kết nó.You don't have to save a file, then copy it, then unlink it.

Vì bạn chỉ định tên tệp đích trong mã của bạn:

move_uploaded_file($filename, "../img/user_uploaded/" . $newfilename);
echo "Stored in: " . "../img/user_uploaded/" .$newfilename;

Tất cả những gì bạn có là chỉ định một tên khác thay vì $newfilename. Nếu mục tiêu của bạn là thay thế tiện ích mở rộng .TMP bằng một thứ khác, bạn có thể xóa bốn ký tự cuối cùng (luôn luôn là .tmp, được đặt bởi PHP), sau đó thêm tiện ích mở rộng của riêng bạn.remove the last four characters (which are always .tmp, set by PHP), then add your own extension.

Nếu bạn chỉ muốn giữ phần mở rộng do người dùng đưa ra, hãy sử dụng:

$friendlyName = $_FILES["file"]["name"];
$extension = substr($friendlyName, strrpos($friendlyName, '.') + 1);

Tất nhiên, bạn phải nhận thức được rủi ro khi sử dụng một cái gì đó được đăng bởi người dùng. Điều gì sẽ xảy ra nếu không có tiện ích mở rộng nào cả, hoặc nếu nó quá dài, hoặc nếu nó không khớp với loại tệp thực (chết chóc-virus.exe được đổi tên thành hình ảnh đẹp.jpg)?



Thay đổi tên hình ảnh trong khi tải lên hình ảnh

Trong PHP, chúng tôi sử dụng tải lên tệp để tải lên tệp văn bản, tệp hình ảnh và bất kỳ tài liệu nào cho ứng dụng web của chúng tôi. Một thời gian chúng tôi tải lên hình ảnh khác nhau nhưng tên hình ảnh giống nhau tại thời điểm đó hình ảnh cũ được thay thế bằng hình ảnh được tải lên cuối cùng.
Some time we upload upload different image but the image name same at that time the old image replaced by last uploaded image.

Chủ yếu trong tất cả các trang web mạng xã hội, tất cả người dùng tải lên hình ảnh hồ sơ của họ trong tài khoản, điều gì xảy ra nếu một số người dùng tải lên cùng tên hình ảnh cho hình ảnh hồ sơ. Hình ảnh cuối cùng được hiển thị trong cả hình ảnh hồ sơ người dùng, hình ảnh hồ sơ người dùng trước đó được thay thế bằng ảnh hồ sơ người dùng mới.

Để ngăn chặn tình huống trên & nbsp; chúng ta cần đổi tên tên ảnh trong khi tải lên, hãy sử dụng một số kết hợp tên hình ảnh duy nhất của Userid duy nhất với văn bản..ETC ..

Đổi tên tên hình ảnh ví dụ PHP



PHP Reanme image example



Select image :
Enter image name :
"; echo "New Image Name = " . $name.".".$extension; } ?>

Đầu ra ví dụ PHP là:

Hướng dẫn upload image and rename php - tải lên hình ảnh và đổi tên php
Đổi tên tên hình ảnh trong khi tải lên hình ảnh



   


     
Your New file name
choose your file

Xuất ra tệp của bạn được tải lên với tên PhptPoint Tên tệp mới của bạn Chọn tệp của bạn Your file is uploaded with phptpoint name your New file name choose your file

Trong ví dụ trên, lần đầu tiên nhập tên của bạn bất cứ điều gì bạn muốn tên hình ảnh mới của bạn, thứ hai bạn phải lấy phần mở rộng của hình ảnh bằng $ _FILES ['file'] ['type'] Nó trả về mảng. Tại [0] chỉ mục, nó hiển thị hình ảnh và tại [1] chỉ mục, nó hiển thị tiện ích mở rộng tệp của bạn như jpg, jpeg, png, v.v. Bây giờ bạn phải đặt tên mới này như $ user. "." của hàm di chuyển_uploaded_file ().

❮ Tham chiếu hệ thống tập tin PHP

Thí dụ

Đổi tên một thư mục + một tệp:

rename("images","pictures");
rename("/test/file1.txt","/home/docs/my_file.txt");
?>



Định nghĩa và cách sử dụng

Hàm đổi tên () đổi tên một tệp hoặc thư mục.

Cú pháp

Đổi tên (cũ, mới, bối cảnh)

Giá trị tham số

Tham sốSự mô tả
Yêu cầu. Chỉ định tệp hoặc thư mục được đổi tên
MớiYêu cầu. Chỉ định tên mới cho tệp hoặc thư mục
định nghĩa bài vănKhông bắt buộc. Chỉ định bối cảnh của xử lý tập tin. Bối cảnh là một tập hợp các tùy chọn có thể sửa đổi hành vi của luồng


Chi tiết kỹ thuật

Giá trị trở lại:Đúng về thành công, sai về thất bại
Phiên bản PHP:4.0+
PHP Changelog:Php 5.3.1: Cho phép đổi tên các tệp trên các ổ đĩa trong Windows.php 5.0: Có thể được sử dụng với một số trình bao bọc URL.
PHP 5.0: Can be used with some URL wrappers.

❮ Tham chiếu hệ thống tập tin PHP


Làm thế nào có thể thay đổi tên hình ảnh tải lên trong PHP?

Bạn có thể chỉ cần thay đổi tên của tệp bằng cách thay đổi tên của tệp trong tham số thứ hai của Move_upLoaded_File.$ TEMP = Explode (".", $ _FILES ["Tệp"] ["Tên"]);$ newFileName = vòng (microtime (true)).'.'.changing the name of the file in the second parameter of move_uploaded_file . $temp = explode(".", $_FILES["file"]["name"]); $newfilename = round(microtime(true)) . '. ' .

Làm thế nào có thể tải lên tên tệp trong PHP?

Trong PHP, chúng ta có thể truy cập tên thực tế của tệp mà chúng ta đang tải lên bởi từ khóa $ _FILES [Tệp File] [Tên Tên].$ _Files là từ khóa mặc định trong PHP để truy cập các chi tiết của các tệp mà chúng tôi đã tải lên.by keyword $_FILES[“file”][“name”]. The $_FILES is the by default keyword in PHP to access the details of files that we uploaded.

Làm thế nào chúng ta có thể đổi tên tệp trong PHP?

Php rename () Chức năng đổi tên ("hình ảnh", "hình ảnh");Đổi tên ("/test/file1. txt", "/home/docs/my_file. txt"); rename("images","pictures"); rename("/test/file1. txt","/home/docs/my_file. txt");

Làm cách nào để thay đổi tải lên tên tệp?

Chúng ta có thể thay đổi tên tệp bằng cách sử dụng phương thức Saveas của Fileupload Control.Phương thức saveas () yêu cầu để truyền một tham số có tên fileName.Giá trị tham số này là một chuỗi chỉ định đường dẫn đầy đủ của vị trí của máy chủ để lưu tệp đã tải lên.using FileUpload control's SaveAs method. SaveAs() method require to pass a parameter named filename. This parameter value is a string that specifies the full path of the location of the server on which to save the uploaded file.