私はPhpseclibを使用してリモートサーバからファイルを取得しています。すべてがうまく動作しますが、ダウンロードするフォルダを圧縮しようとしました。以下のコードを使用して作成したzipファイルは空のままです。私はそれが動作するようにする方法が考えられていません。私のコードに何か間違っていますか?あなたが書くべきZIPディレクトリにリモートサーバのフォルダを解凍できません
$sftp = new Net_SFTP($host);
if (!$sftp->login($user, $password)) {
exit('login failed');
}
$sftp->mkdir($zipfolder);
$sftp->put($zipfolder.'/'.$file, $sftp->get($file));
$sftp->enablePTY();
$sftp->exec('cd '.$filepath.' && zip '.$zipfilename.' '.$zipfolder);
'自体sftp'は、execをサポートしていません。 'exec()'には 'ssh' doが必要です。 – Jakuje
@Jakuje - phpseclibの 'SFTP'は' SSH2'を拡張しています。このように、すべての同じメソッドを継承します。 – neubert
@neubertそれは当てはまりますが、そのサーバーへのSSHアクセスがない場合、SFTPプロトコルでは何もできません。特定のコマンドの実行をサポートしていません。 – Jakuje