В PHP есть потоковые упаковщики ssh2 (по умолчанию отключены), поэтому вы можете использовать соединения sftp с любой функцией, поддерживающей потоковые упаковщики, используя ssh2.sftp://
для протокола, например,
file_get_contents('ssh2.sftp://user:pass@example.com:22/path/to/filename');
или - когда также используется расширение ssh2
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);
$stream = fopen("ssh2.sftp://$sftp/path/to/file", 'r');
См. http://php.net/manual/en/wrappers.ssh2.php
Кстати, на эту тему уже есть довольно много вопросов: