PHP 8.3.4 Released!

ssh2_sftp_rename

(PECL ssh2 >= 0.9.0)

ssh2_sftp_renameRename a remote file

Descrição

ssh2_sftp_rename(resource $sftp, string $from, string $to): bool

Renames a file on the remote filesystem.

Parâmetros

sftp

An SSH2 SFTP resource opened by ssh2_sftp().

from

The current file that is being renamed.

to

The new file name that replaces from.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Exemplos

Exemplo #1 Renaming a file via sftp

<?php
$connection
= ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

ssh2_sftp_rename($sftp, '/home/username/oldname', '/home/username/newname');
?>

Veja Também

  • rename() - Renomeia um arquivo ou diretório

add a note

User Contributed Notes 2 notes

up
4
thomas dot hebinck at digionline dot de
12 years ago
An already existing file will NOT be overwritten.

http://www.openssh.com/txt/draft-ietf-secsh-filexfer-02.txt

"It is an error if there already exists a file with the name specified by newpath."
up
4
Andr Ribas
6 years ago
For some unknown reason we weren't able to rename the remote file using sftp_rename function. Instead we've used the following code:

<?php
$connection
= ssh2_connect('localhost', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);

$fromSftpUrl = "ssh2.sftp://{$sftp}/{$path_from}";
$toSftpUrl = "ssh2.sftp://{$sftp}/{$path_to}";

$success = rename($fromSftpUrl, $toSftpUrl);
?>
To Top