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

search for in the

Secuencias de entrada/salida PHP> <HTTP y HTTPS
Last updated: Fri, 22 Aug 2008

view this page in

FTP y FTPS

PHP 4, PHP 5, PHP 6. ftps:// a partir de PHP 4.3.0

  • ftp://example.com/pub/archivo.txt
  • ftp://usuario:contrasenya@example.com/pub/archivo.txt
  • ftps://example.com/pub/archivo.txt
  • ftps://usuario:contrasenya@example.com/pub/archivo.txt

Permite acceso de lectura a archivos exsistentes y la creación de nuevos archivos mediante FTP. Si el servidor no soporta el modo pasivo de ftp, la conexión fallará.

Puede abrir archivos para lectura o para escritura, pero no en los dos modos simultáneamente. Si el archivo remoto existe previamente en el servidor ftp e intenta abrirlo para escritura, pero no tiene especificada la opción de contexto overwrite, la conexión fallará. Si necesita sobrescribir archivos existentes sobre ftp, especifique la opción overwrite en el contexto y abra el archivo para escritura. Alternativamente, puede usar la extensión FTP.

Note: Adición
A partir de PHP 5.0.0, los archivos pueden ser extendidos, agregando nuevos datos al final, mediante la envoltura de URL ftp://. En versiones anteriores, al intentar adicionar datos a un archivo mediante ftp:// se producirá un fallo.

ftps:// se ha introducido en PHP 4.3.0. Es igual a ftp://, pero intenta negociar una conexión segura con el servidor ftp. Si el servidor no soporta SSL, entonces la conexión recae sobre el ftp corriente, sin encripción.

Note: FTPS es soportado desde PHP 4.3.0, si ha compilado el soporte para OpenSSL.

Resumen de Envoltura
Atributo PHP 4 PHP 5
Restricción por allow_url_fopen Si Si
Permite Lectura Si Si
Permite Escritura Si (archivos nuevos únicamente) Si (archivos nuevos/archivos existentes con overwrite )
Permite Adición No Si
Permite Lectura y Escritura Simultánea No No
Soporte stat() No A partir de PHP 5.0.0: Sólo los elementos filesize(), filetype(), file_exists(), is_file(), e is_dir(). A partir de PHP 5.1.0: filemtime().
Soporte unlink() No Si
Soporte rename() No Si
Soporte mkdir() No Si
Soporte rmdir() No Si



Secuencias de entrada/salida PHP> <HTTP y HTTPS
Last updated: Fri, 22 Aug 2008
 
add a note add a note User Contributed Notes
FTP y FTPS
fazil dot stormhammer dot nospam at gmail dot com
25-Apr-2008 09:41
Document says "Allows read access to existing files and creation of new files via FTP. If the server does not support passive mode ftp, the connection will fail. "

As of version 5.2.5 at least fopen("ftp://...") uses an ACTIVE mode connection by default (it issues an FTP PORT command but not a PASV command).  To force passive mode:

$f = fopen("ftp://...");
ftp_pasv($f, true);
wlangdon at essex dot ac dot uk
09-Oct-2006 05:32
old fashioned FTP servers may not be compatible with ftp_connect().
26-Sep-2005 04:33
<?
$str
="replace all contenents";
$filew="ftp://gufo:gufo@192.168.1.55:21/jj.php";
$opts = array('ftp' => array('overwrite' => true));
$context = stream_context_create($opts);
$strwri = file_put_contents($filew,$str,LOCK_EX,$context);
?>
php at f00n dot com
04-Jul-2004 08:39
For Intranet purposes I found I preferred to move my file via ftp functions to match the session user's ftp account and put the file in a holding bay so I knew who it was from.

The FTP wrapper method will NOT do this if your ftp server does NOT support passive mode.

eg.  an ftp server behind NAT/routing

Secuencias de entrada/salida PHP> <HTTP y HTTPS
Last updated: Fri, 22 Aug 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites