我想做的事
我想要upload
/download
一个文件通过sftp
using php
.
The phpseclib-library
看起来很有前途。
我已经做了什么
我将composer.json更改为:
{
"require": {
"nicolab/php-ftp-client":"*",
"php-curl-class/php-curl-class":"*",
"phpseclib/phpseclib":"*"
}
}
然后我更新了我的目录。 Composer 将库安装在供应商文件夹中。
问题
问题是我无法创建新的SFTP-Object
.
Fatal error: Class 'SFTP' not found in...
我也尝试过NET_SFTP
作为类名,但这也不起作用。
我不明白的一件事是为什么on http://phpseclib.sourceforge.net/sftp/examples.html#stat,它声明类名是NET_SFTP
当在源代码中明确调用时SFTP
.
而且自动加载似乎不起作用。
I added echo "testline";
到库来查看文件是否已加载。如果我使用自动加载,什么也不会发生。如果我手动包含该文件,"testline"
已打印,但仍未找到该类。
My Code
例一
<?php
include '/vendor/autoload.php';
$sftp = new SFTP('domain');
if (!$sftp->login('user', 'pass')) {
exit('Login Failed');
}
-> 无回声
示例二:
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib/phpseclib');
include('Net/SSH2.php');
include('Net/SFTP.php');
$sftp = new SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
exit('Login Failed');
}
-> 回声
在这两个示例中都找不到该类。