PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ftp_ssl_connect> <ftp_site
Last updated: Fri, 22 Aug 2008

view this page in

ftp_size

(PHP 4, PHP 5)

ftp_sizeDevuelve el tamaño del archivo dado

Descripción

int ftp_size ( resource $secuencia_ftp , string $archivo_remoto )

ftp_size() devuelve el tamaño del archivo dado en bytes.

Note: No todos los servidores soportan esta característica.

Lista de parámetros

secuencia_ftp

El identificador de enlace de la conexión FTP.

archivo_remoto

El archivo remoto.

Valores retornados

Devuelve el tamaño del archivo de tener éxito, o -1 en caso de fallo.

Ejemplos

Example #1 Ejemplo de ftp_size()

<?php

$archivo 
'un_archivo.txt';

// establecer la conexion basica
$id_con ftp_connect($servidor_ftp);

// iniciar sesion con nombre de usuario y contrasenya
$resultado_login ftp_login($id_con$ftp_nombre_usuario$ftp_contrasenya);

// obtener el tamanyo de $archivo
$res ftp_size($id_con$archivo);

if (
$res != -1) {
    echo 
"el tama&ntilde;o de $file es $res bytes";
} else {
    echo 
"no pudo obtenerse el tama&ntilde;o";
}

// cerrar la conexion
ftp_close($id_con);

?>

Ver también



ftp_ssl_connect> <ftp_site
Last updated: Fri, 22 Aug 2008
 
add a note add a note User Contributed Notes
ftp_size
miccots at gmail dot com
30-Oct-2007 10:55
2 adams[AT]techweavers[DOT]net:
To get a size of large file (f. ex.: 3.2 Gb) you have to format the result returned by ftp_size():

$size = sprintf ("%u", ftp_size($connection, $file_name));

So you can get the real size of big files. But this method is not good for checking is this a dir (when ftp_size() returns -1).
C_Muller
22-Jul-2007 12:42
For checking if a certain folder exists try using ftp_nlist() function to get a directory list in array. By using in_array('foldername') you can find out if it is there or not.
chuck at t8design dot com
23-May-2006 06:54
note that project_t4 at hotmail dot com's example above doesn't work in general, though it works on his Win2K/Apache server; as far as I can tell there is no way to check over ftp whether a directory exists.  This function's behavior given a directory name seems to be at least somewhat dependent on your OS, web server, or ftp server, I don't know which.
adams[AT]techweavers[DOT]net
21-Jun-2005 11:30
Well this function is nice but if you have files larger then 2.1Gb or 2.1 Billion Bytes you cannot get its size.
29-Sep-2004 03:10
To get a dirsize recursive you can use this simple function:

<?php # copyright by fackelkind | codeMaster
   
function getRecDirSize ($connection, $dir){
       
$temp = ftp_rawlist ($connection, "-alR $dir");
        foreach (
$temp as $file){
            if (
ereg ("([-d][rwxst-]+).* ([0-9]) ([a-zA-Z0-9]+).* ([a-zA-Z0-9]+).* ([0-9]*) ([a-zA-Z]+[0-9: ]*[0-9]) ([0-9]{2}:[0-9]{2}) (.+)", $file, $regs)){ 
               
$isdir = (substr ($regs[1],0,1) == "d");
                if (!
$isdir)
                   
$size += $regs[5];
            }
        }
        return
$size;
    }
   
$dirSize = getRecDirSize ($conID, "/");
?>
project_t4 at hotmail dot com
18-Mar-2004 08:03
Just to let people out there know, on my windows 2000 server running Apache and php i was returned 0 not -1 for directories.

foreach ($dir_list as $item)
    {
      if(ftp_size($conn_id, $item) == "0")
      {
      echo "<br>Directory:: ".$item;
      } else {
      echo "<br>File:: ".$item;
      }
    }

This outputs a list of the remote directory and indicates which items are directories and which are files.
nicke_ at at_h9k dot com
04-Oct-2003 03:48
This will return the filesize on remote host and the size if you download it in FTP_BINARY mode. If you are using FTP_ASCII in ftp_get() the size can be changed.
victor59 at yahoo dot com dot hk
23-Dec-2002 10:44
$file= 'filename with space.txt';
$size = ftp_size($this->ftp, urldecode($file) );

this one can correctly return the size
otherwize, it always return -1

ftp_ssl_connect> <ftp_site
Last updated: Fri, 22 Aug 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites