Skip to content
Related Articles

Related Articles

PHP | ftp_alloc() function
  • Last Updated : 16 Apr, 2019

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
  
// Connect to FTP server
  
// Use a correct ftp server 
$ftp_server = "localhost";
  
// Use correct ftp username
$ftp_username = "user";
  
// Use correct ftp password corresponding
// to the ftp username
$ftp_userpass = "user";
  
// File name or path to upload to ftp server
$file = "filetoupload.txt";
   
// Establishing ftp connection 
$ftp_connection = ftp_connect($ftp_server
    or die("Could not connect to $ftp_server");
  
if($ftp_connection) {
    echo "successfully connected to the ftp server!";
      
    // Logging in to established connection
    // with ftp username password
    $login = ftp_login($ftp_connection,
            $ftp_username, $ftp_userpass);
      
    if($login) {
          
        // Checking whether logged in successfully or not
        echo "<br>logged in successfully!";
          
        // Allocating space for the file as specified
        // i.e. in $file
        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!";
    }
  
    // Closeing  connection
    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
  
// Connect to FTP server
  
// Use a correct ftp server 
$ftp_server = "localhost";
  
// Use correct ftp username
$ftp_username = "user";
  
// Use correct ftp password corresponding
// to the ftp username
$ftp_userpass = "user";
  
// File name or path to upload to ftp server
$file = "filetoupload.txt";
   
// Establishing ftp connection 
$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!";
      
    // Logging in to established connection
    // with ftp username password
    $login = ftp_login($ftp_connection,
            $ftp_username, $ftp_userpass);
      
    if($login) {
          
        // Checking whether logged in successfully or not
        echo "<br>logged in successfully!";
          
        // Allocating space for the file as specified
        // i.e. in $file
        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!";
    }
  
    // Closeing  connection
    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

My Personal Notes arrow_drop_up
Recommended Articles
Page :