cURL - 如何将PDF文件发送到SFTP服务器

时间:2018-05-28 08:22:05

标签: php pdf curl

我正在尝试使用pdfcURL文件发送到远程sftp服务器。首先,我发送了一个csv文件,并使用正确的内容成功发送到服务器。 但是现在我正在尝试发送一个pdf文件,我发送的文件但是大小为0 kb

$ch = curl_init('sftp://' . $sftpServer . ':' . $sftpPort . $sftpRemoteDir . '/' . basename($dataFile));

            $fh = fopen($dataFile, 'r');

            if ($dataFile) {
                curl_setopt($ch, CURLOPT_USERPWD, $sftpUsername . ':' . $sftpPassword);
                curl_setopt($ch, CURLOPT_UPLOAD, true);
                curl_setopt($ch, CURLOPT_PROTOCOLS, CURLPROTO_SFTP);
                curl_setopt($ch, CURLOPT_INFILE, $fh);
                curl_setopt($ch, CURLOPT_INFILESIZE, filesize($fh));
                curl_setopt($ch, CURLOPT_VERBOSE, true);

                $verbose = fopen('php://temp', 'w+');
                curl_setopt($ch, CURLOPT_STDERR, $verbose);

                $response = curl_exec($ch);
                $error = curl_error($ch);
                curl_close($ch);

                if ($response) {
                    echo "Success";
                } else {
                    echo "Failure";
                    rewind($verbose);
                    $verboseLog = stream_get_contents($verbose);
                    echo "Verbose information:\n" . $verboseLog . "\n";
                }
            } 

我了解到pdf文件无法使用fopen打开。我不确定是否需要与fopen类似的其他功能来上传pdf文件,其大小和内容正确。对此有任何可能的解决方案吗?

0 个答案:

没有答案