4

Googleで解決策が見つからなかったので、ここの誰かが私を助けてくれることを願っています。私がしなければならないのは、sftpサーバー上のファイルに直接保存するXML文字列(機能する)を生成することです。

これまでのところ、とても良いです...私はftpで次のコードを使用しました、そしてそれは動作しますが、ftpsでは動作しません。したがって、別のオプションが必要です。ストリームの構成か、そのタスクを解決する別の方法です。

ここに私の現在のコード:

$host = 'ftp.example.com';

$port = 22;

$user = 'xxxxxx';

$pass = 'xxxxxx';

$file    = 'test_' . time() . '.txt';

$ftpPath = sprintf('ftp://%s:%s@%s:%d/%s', $user, $pass, $host, $port, $file);

$context = stream_context_create(array('ftp' => array('overwrite' => true)));

file_put_contents($ftpPath, 'test', 0, $context);
4

3 に答える 3

1

OpenSSL サポートがコンパイルされた PHP が必要です。次に、ftp:// の代わりに ftps:// を使用します。FTPS の詳細

于 2010-06-18T09:02:36.740 に答える
1

ssh2.sftp://の代わりに使用しftp://ます。ssh2_sftpを参照してください。

于 2010-06-18T11:03:35.113 に答える
0

より簡単な解決策は、ファイルを一時ディレクトリに保存してから、シェル コマンドを実行して実際にファイルを送信することです。

于 2010-06-18T09:02:42.357 に答える