FTP_RENAME est une fonction intégrée en PHP qui renomment des fichiers ou des répertoires sur un serveur FTP. La syntaxe de base est la suivante:
<span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span> ( resource </span><span><span class="hljs-variable">$ftp_stream</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$from</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$to</span></span><span> )
</span></span>$ ftp_stream : la poignée de ressource pour la connexion FTP doit être une connexion FTP établie via des fonctions telles que FTP_Connect ou FTP_SSL_CONNECT .
$ From : Le chemin vers le fichier ou le répertoire d'origine à renommer.
$ à : le chemin du nouveau fichier ou du nouveau répertoire, c'est-à-dire le nom renommé.
Cette fonction renvoie True si l'opération de changement de nom est réussie et renvoie False si l'opération échoue.
Tout d'abord, vous devez établir une connexion au serveur FTP via la fonction FTP_Connect . Si le serveur FTP nécessite une authentification, vous devez également utiliser la fonction FTP_Login pour vous connecter.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$ftp_server</span></span><span> = </span><span><span class="hljs-string">"ftp.example.com"</span></span><span>;
</span><span><span class="hljs-variable">$ftp_username</span></span><span> = </span><span><span class="hljs-string">"username"</span></span><span>;
</span><span><span class="hljs-variable">$ftp_password</span></span><span> = </span><span><span class="hljs-string">"password"</span></span><span>;
</span><span><span class="hljs-comment">// ÉtablirFTPconnecter</span></span><span>
</span><span><span class="hljs-variable">$ftp_conn</span></span><span> = </span><span><span class="hljs-title function_ invoke__">ftp_connect</span></span><span>(</span><span><span class="hljs-variable">$ftp_server</span></span><span>) </span><span><span class="hljs-keyword">or</span></span><span> </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"无法connecter到FTPserveur"</span></span><span>);
</span><span><span class="hljs-comment">// Se connecterFTPserveur</span></span><span>
</span><span><span class="hljs-variable">$login</span></span><span> = </span><span><span class="hljs-title function_ invoke__">ftp_login</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$ftp_username</span></span><span>, </span><span><span class="hljs-variable">$ftp_password</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$login</span></span><span>) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"La connexion a échoué。"</span></span><span>);
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>Utilisez la fonction FTP_RENAME pour renommer le répertoire sur le serveur FTP. En supposant que nous devons renommer / old_directory vers / new_directory , nous pouvons l'implémenter avec le code suivant:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$old_dir</span></span><span> = </span><span><span class="hljs-string">"/old_directory"</span></span><span>;
</span><span><span class="hljs-variable">$new_dir</span></span><span> = </span><span><span class="hljs-string">"/new_directory"</span></span><span>;
</span><span><span class="hljs-comment">// Renommer le répertoire</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>, </span><span><span class="hljs-variable">$new_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Le répertoire renomme avec succès!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Le renom sur le répertoire a échoué!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>Après avoir terminé l'opération de renommée du répertoire, la connexion au serveur FTP doit être fermée et les ressources doivent être publiées:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// fermetureFTPconnecter</span></span><span>
</span><span><span class="hljs-title function_ invoke__">ftp_close</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>Il y a plusieurs choses auxquelles faire attention lors de l'utilisation de la fonction FTP_RENAME :
Assurez-vous que le compte FTP a des autorisations suffisantes pour modifier le nom du répertoire lors de l'exécution de l'opération de renommée. Si le compte FTP n'a pas les autorisations correspondantes, FTP_RENAME ne sera pas exécuté avec succès.
La fonction ftp_rename ne vérifie pas si le répertoire source existe. Si le répertoire source spécifié n'existe pas ou si le chemin est incorrect, l'opération échouera. Pour éviter cela, vous pouvez utiliser FTP_CHDIR ou FTP_NList pour vérifier si le répertoire source existe.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_chdir</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>, </span><span><span class="hljs-variable">$new_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Le répertoire renomme avec succès!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Le renom sur le répertoire a échoué!"</span></span><span>;
}
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Le répertoire source n'existe pas!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>Le chemin spécifié dans FTP_RENAME est relatif au chemin du répertoire racine FTP, vous devez donc assurer l'exactitude du chemin. Si vous devez renommer le répertoire ou le fichier dans le répertoire racine, vous pouvez utiliser directement le nom du répertoire; S'il s'agit d'un sous-répertoire, il doit contenir un chemin relatif complet.
Étiquettes associées:
FTP