FTP et FTPS

PHP 3, PHP 4, PHP 5. ftps:// depuis PHP 4.3

Permet l'accès aux fichiers existants, et la création de fichiers via FTP. Si le serveur ne supporte pas les connexions en mode passif, la connexion échouera.

Vous pouvez ouvrir des fichiers en lecture et en écriture, mais pas les deux en même temps. Si le fichier distant existe déjà sur le serveur FTP, vous pourrez essayer de l'ouvrir en écriture, mais la connexion échouera. Si vous devez modifier un fichier qui existe déjà, utilisez ftp_connect().

ftps:// a été introduit en PHP 4.3. C'est le même que ftp://, mais il tente d'établir une connexion sécurisée avec le serveur FTP. Si le serveur ne le supporte pas, la connexion sera une connexion non sécurisée.

Note : FTPS est supporté depuis PHP 4.3.0, si vous avez compilé le support d'OpenSSL.

Tableau L-4. Résumé des gestionnaires

AttributPHP 4PHP 5
Limité par allow_url_fopen.OuiOui
Autorisé en lectureOuiOui
Autorisé en écritureOui (nouveaux fichiers uniquement)Oui (nouveaux fichiers et fichiers existants avec overwrite)
Autorisé en ajoutNonOui
Autorisé en lecture et écritureNonNon
Supporte stat()Non Depuis PHP 5.0.0 : uniquement filesize(), filetype(), file_exists(), is_file() et is_dir(). Depuis PHP 5.1.0 : filemtime().
Supporte unlink()NonOui
Supporte rename()NonOui
Supporte mkdir()NonOui
Supporte rmdir()NonOui

Tableau L-5. Options de contexte en PHP 5.0.0

NamUtilisationPar défaut
overwrite Permet l'écrasement d'un fichier existant sur le serveur distant. S'applique au mode écriture uniquement. FALSE (Désactivé)
resume_pos Offset du fichier où commencer le transfert. S'applique uniquement au mode de lecture. 0 (Début du fichier)
proxy(PHP 5.1.0 ou supérieur) Requête FTP proxy via le serveur http proxy. Appliquer uniquement aux opérations de lecture de fichiers. Exemple : tcp://squid.example.com:8000  

Options de contexte pour les sockets : Plusieurs options de contexte supplémentaires sont supportées par le gestionnaire de transport Pour les flux ftp://, voyez les options de contexte du transport tcp://. Pour les flux https://, voyez les options de contexte du transport ssl://.