Maison >développement back-end >tutoriel php >Lorsqu'un transfert de fichier FTP avec ftp_put échoue en PHP, est-ce dû à un mode FTP mal défini ?
Dépannage de l'échec de ftp_put en PHP
Problème :
Lors de la tentative de téléchargement d'un fichier XML à un serveur FTP à l'aide de la fonction ftp_put en PHP, l'opération échoue et renvoie false.
Cause :
Une cause courante des échecs de ftp_put est que PHP utilise par défaut le mode FTP actif, qui est souvent incompatible avec de nombreux serveurs FTP en raison de restrictions de pare-feu ou de réseau. Le passage au mode passif résout généralement ce problème.
Solution :
Pour passer au mode passif en PHP, utilisez la fonction ftp_pasv après avoir établi une connexion FTP :
<code class="php">$connect = ftp_connect($ftp) or die("Unable to connect to host"); ftp_login($connect, $username, $pwd) or die("Authorization failed"); // Turn passive mode on ftp_pasv($connect, true) or die("Unable to switch to passive mode");</code>
Considérations supplémentaires :
<code class="php">ftp_set_option($connect, FTP_USEPASVADDRESS, false);</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!