У меня есть код, который генерирует текстовый файл на моем сервере. Затем мне нужен этот файл, загруженный на другой сервер с помощью sftp. Для того, чтобы начать вещи, яphpseclib производит странный вывод
if(performLdapOperations()) {
sleep(10);
performFtpOperation();
}
performLdapOperations производит текстовый файл и помещает его на моем сервере, performFtpOperation берет этот текстовый файл и загрузки на другой сервер. Это моя функция
function performFtpOperation() {
global $config;
$local_directory = getcwd() .'/outputs/';
$remote_directory = '/home/newfolder/';
$sftp = new SFTP($config::FTP_SERVER, 22, 10);
if (!$sftp->login($config::FTP_USER, $config::FTP_PASSWORD)) {
exit('Login Failed');
}
$files_to_upload = array();
/* Open the local directory form where you want to upload the files */
if ($handle = opendir($local_directory))
{
/* This is the correct way to loop over the directory. */
while (false !== ($file = readdir($handle)))
{
if ($file != "." && $file != "..")
{
$files_to_upload[] = $file;
}
}
closedir($handle);
}
if(!empty($files_to_upload))
{
/* Now upload all the files to the remote server */
foreach($files_to_upload as $file)
{
$success = $sftp->put($remote_directory . $file,
$local_directory . $file,
NET_SFTP_LOCAL_FILE);
}
}
}
Так что текстовый файл, который производит, находится в папке моих выходов. Затем я хочу взять этот файл и загрузить его на новый сервер в папку/home/newfolder/
Все работает, и файл, кажется, загружается на новый сервер. Однако, когда я открываю файл, который был загружен, все, что он содержит, - это путь к тому, где находится файл, и ничего больше. Файл на моем сервере, который находится в папке с выводами, содержит все, по какой-то причине что-то не так, когда вы отправляете его через sftp?
В моем коде есть что-то, что может быть причиной этого?
Благодаря