PHPからcURL関数を使ってSCPでアップロード

<?php
// PHP5.3.26 win32
$send_file_path = 'c:/hoge/fuga/test.txt';                 // 送信するファイルのローカスパス
$target_file_path = 'scp://example.jp/home/user/test.txt'; // 送信先ファイルのリモートパス

$ch = curl_init();
curl_setopt($ch, CURLOPT_UPLOAD, true);                                 // アップロードを指定
curl_setopt($ch, CURLOPT_INFILE, fopen($send_file_path, 'r'));          // 送信ファイルを開く
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($send_file_path));        // 送信ファイルのサイズを指定
curl_setopt($ch, CURLOPT_URL, $target_file_path);                       // 送信先サイルのリモートパス(プロトコル含む)を指定
curl_setopt($ch, CURLOPT_SSH_AUTH_TYPES, CURLSSH_AUTH_PASSWORD);        // 認証方式を指定(ここではパスワード)
curl_setopt($ch, CURLOPT_USERPWD,'user:password');                      // 認証ユーザー、パスワード

$ret = curl_exec($ch); // 通信実行

if($ret) {
    echo 'send ok!';
} else {
    // 送信結果がfalseならエラーメッセージと通信情報を表示
    var_dump(curl_error($ch));
    var_dump(curl_getinfo($ch));
}