简体   繁体   English

通过sftp下载带有curl的文件

[英]download file with curl via sftp

This only creates an empty file.. No content in the file 这只会创建一个空文件。文件中没有内容

$host = 'domain.com';
$pass = 'xxx';

$remote = 'sftp://var/www/test.txt';
$local = 'C:\wamp\www\test.txt';

$curl = curl_init();
$file = fopen($local, 'w');
curl_setopt($curl, CURLOPT_URL, $remote);
curl_setopt($curl, CURLOPT_PROTOCOLS, CURLPROTO_SFTP);
curl_setopt($curl, CURLOPT_USERPWD, "root:$pass");
curl_setopt($curl, CURLOPT_FILE, $file);
curl_exec($curl);
curl_close($curl);
fclose($file);

solution

$host = 'domain.com';
$pass = 'xxx';

$remote = "sftp://root:$pass@$host/var/www/test.txt";
$local = 'C:\wamp\www\test.txt';

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $remote);
curl_setopt($curl, CURLOPT_PROTOCOLS, CURLPROTO_SFTP);
curl_setopt($curl, CURLOPT_USERPWD, "root:$pass");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
file_put_contents($local, curl_exec($curl));
curl_close($curl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$d = curl_exec($curl);
// data is in $d var, write it somewhere ;)
$local = "/tmp/myfile.txt";
file_put_contents($local, $d);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM