Home > Article > Backend Development > PHP FTP learning two
By Vikram Vaswani
Melonfire
November 07, 2000
Log in to the FTP server. PHP provides some functions that can obtain some information about the system, files and directories.
ftp_pwd()
If you want to know the directory you are currently in, you need to use this function.
------------------------------------------------- -------------------------------
// get current location
$here = ftp_pwd($conn) ;
?>
---------------------------------------------------------- ------------------------------------
In case you need to know what system the server is running ?
ftp_systype() provides you with exactly this information.
------------------------------------------------- -------------------------------
// get system type
$server_os = ftp_systype($conn) ;
?>
---------------------------------------------------------- ------------------------------------
Regarding the passive mode (PASV) switch, PHP also provides Such a function can turn PASV on or off (1 means on)
---------------------------------- --------------------------------------------------
// turn PASV on
ftp_pasv($conn, 1);
?>
--------------------------------- --------------------------------------------------
Now that you know "where" you are and "who" is with you, let's start walking around in the directory - what implements this function is the ftp_chdir() function, which accepts a directory name as a parameter .
------------------------------------------------- -------------------------------
// change directory to "public_html"
ftp_chdir($conn, "public_html");
?>
---------------------------------------- ----------------------------------------
If you want to go back to where you were just now Directory (parent directory), ftp_cdup() can help you realize your wish. This function can return to the previous directory.
------------------------------------------------- -------------------------------
// go up one level in the directory tree
ftp_cdup($ conn);
?>
------------------------------------------------ -------------------------------------
You can also create or move a directory by Use the ftp_mkdir() and ftp_rmdir() functions; note: If ftp_mkdir() is successfully created, it will return the newly created directory name.
------------------------------------------------- -------------------------------
// make the directory "test"
ftp_mkdir($conn, "test");
// remove the directory "test"
ftp_rmdir($conn, "test");
?>
----------------------------- -------------------------------------------------- ----------
Creating an FTP directory is usually to transfer files --- So let's get started!
First upload the file. The ftp_put() function is well qualified for this task. It requires you to specify a local file name, the uploaded file name and the type of transfer. For example: If you want to upload the file "abc.txt" and name it "xyz.txt" after uploading, the command should be like this:
------------------ -------------------------------------------------- -----------
// upload
ftp_put($conn, "xyz.txt", "abc.txt", FTP_ASCII);
?>
----- -------------------------------------------------- --------------------------
Download file:
The function provided by PHP is ftp_get(), which also requires a file name on the server, download The following file name and transfer type are used as parameters, for example: the server-side file is his.zip, you want to download it to the local machine and name it hers.zip, the command is as follows:
----------- -------------------------------------------------- ------------------
// download
ftp_get($conn, "hers.zip", "his.zip", FTP_BINARY);
? >
-------------------------------------------------- ----------------------------------
PHP defines two modes as transmission modes FTP_BINARY and FTP_ASCII. Please refer to the above two examples for the use of patterns. As for their detailed explanations, this article will not go into details. Please refer to relevant books for details.
How should I list files? (Use DIR? :) )
PHP provides two methods: one is to simply list the file name and directory, and the other is to list the file size, permissions, creation time and other information in detail.
The first one uses the ftp_nlist() function, and the second one uses ftp_rawlist(). Both functions require a directory name as a parameter, and both return the directory column as an array. Each element of the array is equivalent to a row of the list.
------------------------------------------------- -------------------------------
// obtain file listing
$filelist = ftp_nlist($conn, ".");
?>
---------------------------------------- ----------------------------------------
You must want to know the file size! Don't worry, here is a very easy function ftp_size(), which returns the size of the file you specify, using BITES as the unit.It should be noted that if it returns "-1", it means that this is a directory. In the following examples, you will see the application of this feature.
------------------------------------------------- -------------------------------
// obtain file size of file "data.zip"
$ filelist = ftp_size($conn, "data.zip");
?>
The above has introduced PHP FTP learning part 2, including aspects of the content. I hope it will be helpful to friends who are interested in PHP tutorials.