Are there differences when I use that functions? Why should I use one instead of the other one...
copy() copies the file - you now have 2 files, and for large files, this can take very longrename() changes the file's name, which can mean moving it between directories.move_uploaded_file() is basically the same as rename(), but it will only work on files that have been uploaded via PHP's upload mechanism. This is a security feature that prevents users from tricking your script into showing them security-relevant data.In the future, I suggest looking up such information in the PHP Manual yourself.