我正在使用以下代码将文件传输到SFTP服务器

use phpseclib3\Net\SFTP;

$sftp = new SFTP('localhost');

$sftp->login('user', 'password');
error_log($sftp->pwd());

foreach ($fileList as $key => $value) {
    $output = $sftp->put("//data//myfile.txt, //sourceFile.txt, SFTP::SOURCE_LOCAL_FILE);
    error_log($output);
}

error_log($sftp->getLastError());
// error_log($sftp->getSFTPLastError());
error_log('------------------------------------');
error_log("<pre>" . print_r($sftp->getErrors(), true) . "</pre>");
// error_log("<pre>" . print_r($sftp->getSFTPErrors(), true) . "</pre>");
error_log("<pre>" . print_r($sftp->getLog(), true) . "</pre>");
error_log("<pre>" . print_r($sftp->getSFTPLog(), true) . "</pre>");

它运行得很好.我唯一的问题是,如果失败,它不会抛出任何错误消息(只有$OUTPUT变为空). 如果出现任何问题,我需要更改什么才能获得正确的日志(log)记录消息或至少从SFTP服务器获得响应?

推荐答案

将@Neubert comments 复制到此处,以显示我问题的正确答案:

您需要在文件顶部定义(‘NET_SFTP_LOGGING’,2)才能正常工作.

Php相关问答推荐

为什么这个方法调用用引号和花括号包裹?

Laravel:启动下载并同时在Blade 中显示Flash消息

获得客户S在WooCommerce为期1年的总支出

根据特定运输类别增加WooCommerce购物车总重量

自定义WooCommerce查询字符串仅显示前3个产品

以编程方式更新现有Yith WooCommerce Booking的状态

如何将对我的域的请求重定向到子文件夹中的索引,同时保留域URL并使用.htaccess?

PHP日期操作,将多个日期输出为格式化字符串

使用PHP curl的Amazon SP API批处理调用

如何在Laravel Model中自定义多个日期属性的日期格式?

Wordpress,配置一周第一天选项

使用 secure 和 httponly 选项删除 php 中的 cookie 值得吗?

使用自定义插件中的 WooCommerce 模板发送自定义邮箱

在 php 中生成 MAC ISO/IEC 9797-1

图像未在 Laravel Ajax Crud 中显示

使用现有的htaccess的PHP路由脚本

在WooCommerce可变产品中显示所选变体的自定义字段

PHP / DOM : 解析 HTML 以提取基于类的数​​据

PHP Loop 在迭代中使用修改后的数据

Eloquent 的模型更新了它应该 laravel php 的更多行