The ftp_alloc() function is an inbuilt function in PHP which is used to allocate space for file to be uploaded in FTP server.
Syntax:
ftp_alloc( $ftp_connection, $filesize, $result );
Parameter: This function accepts three parameters as mentioned above and described below:
- $ftp_connection: It is required parameter. It specifies the already existing FTP connection to use for allocating space and uploading the file.
- $filesize: It is required parameter. It specifies the size of the file in bytes i.e. number of bytes to allocate.
- $result: This parameter is optional. It specifies a variable to store the response in it.
Return Value: It returns True on success or False on failure.
Note:
- This function is available for PHP 5.0.0 and newer version.
- The following examples cannot be run on online IDE. So try to run in some PHP hosting server or localhost with proper ftp server name.
Below examples illustrate the ftp_alloc() function in PHP:
Example 1:
php
<?php
$ftp_server = "localhost" ;
$ftp_username = "user" ;
$ftp_userpass = "user" ;
$file = "filetoupload.txt" ;
$ftp_connection = ftp_connect( $ftp_server )
or die ( "Could not connect to $ftp_server" );
if ( $ftp_connection ) {
echo "successfully connected to the ftp server!" ;
$login = ftp_login( $ftp_connection ,
$ftp_username , $ftp_userpass );
if ( $login ) {
echo "<br>logged in successfully!" ;
if (ftp_alloc( $ftp_connection , filesize ( $file ), $result )) {
echo "<br>space successfully allocated on the FTP server" ;
if (ftp_put( $ftp_connection ,
"uploadedfile_name_in_server.txt" , $file , FTP_ASCII)) {
echo "<br>Uploaded successful $file." ;
}
else {
echo "<br>Error while uploading $file." ;
}
}
else {
echo "<br>space allocation failed!" ;
}
}
else {
echo "<br>login failed!" ;
}
if (ftp_close( $ftp_connection )) {
echo "<br>Connection closed Successfully!" ;
}
}
?>
|
Output:
successfully connected to the ftp server!
logged in successfully!
space successfully allocated on the FTP server
Uploaded successful filetoupload.txt.
Connection closed Successfully!
Example 2: Connect to ftp server using port number 21 and then allocate and upload file.
php
<?php
$ftp_server = "localhost" ;
$ftp_username = "user" ;
$ftp_userpass = "user" ;
$file = "filetoupload.txt" ;
$ftp_connection = ftp_connect( $ftp_server , 21)
or die ( "Could not connect to $ftp_server" );
if ( $ftp_connection ) {
echo "successfully connected to the ftp server!" ;
$login = ftp_login( $ftp_connection ,
$ftp_username , $ftp_userpass );
if ( $login ) {
echo "<br>logged in successfully!" ;
if (ftp_alloc( $ftp_connection , filesize ( $file ), $result )) {
echo "<br>space successfully allocated on the FTP server" ;
if (ftp_put( $ftp_connection ,
"uploadedfile_name_in_server.txt" , $file , FTP_ASCII)) {
echo "<br>Uploaded successful $file." ;
}
else {
echo "<br>Error while uploading $file." ;
}
}
else {
echo "<br>space allocation failed!" ;
}
}
else {
echo "<br>login failed!" ;
}
if (ftp_close( $ftp_connection )) {
echo "<br>Connection closed Successfully!" ;
}
}
?>
|
Output:
successfully connected to the ftp server!
logged in successfully!
space successfully allocated on the FTP server
Uploaded successful filetoupload.txt.
Connection closed Successfully!
Reference: https://www.php.net/manual/en/function.ftp-alloc.php
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
28 Jul, 2021
Like Article
Save Article