Php 调用未定义的方法Net_SSH2::put()
我使用的是PHP_SSH2版本1.1.2(和phpseclib版本1.0.11),在尝试上载文件时,出现以下错误: PHP致命错误:未捕获错误:调用未定义的方法Net_SSH2::put() 以下是我正在使用的代码:Php 调用未定义的方法Net_SSH2::put(),php,sftp,ssh2-sftp,Php,Sftp,Ssh2 Sftp,我使用的是PHP_SSH2版本1.1.2(和phpseclib版本1.0.11),在尝试上载文件时,出现以下错误: PHP致命错误:未捕获错误:调用未定义的方法Net_SSH2::put() 以下是我正在使用的代码: require 'Net/SSH2.php'; define('NET_SSH2_LOGGING', NET_SSH2_LOG_COMPLEX); $connection = new Net_SSH2($ftp_server); if(!$connection->login
require 'Net/SSH2.php';
define('NET_SSH2_LOGGING', NET_SSH2_LOG_COMPLEX);
$connection = new Net_SSH2($ftp_server);
if(!$connection->login($ftp_user_name, $ftp_user_pass)){
die("FTP connection has failed!\nAttempted to connect to $ftp_server for user $ftp_user_name");
}
$source_file = 'filename.txt';
$destination_file = $source_file;
$upload = $connection->put($destination_file, $source_file, NET_SFTP_LOCAL_FILE);
if (!$upload) die("FTP upload of $source_file has failed!");
我可以正常连接到服务器(因此
login()
可以正常工作),但是put()
不行?Net\u SSH2没有put方法。您需要使用Net_SFTP在SSH服务器上执行SFTP操作
您正在尝试使用SFTP还是FTP?在SFTP的情况下,您希望SFTP而不是SSH2。SFTP使用SSH协议,而不是FTP协议,但是phpseclib仍然有一个单独的类!谢谢,一定是星期五;-)