Para usar os empacotadores ssh2.*://$session,
a variável de recurso $session deve ser mantida.
O código abaixo não terá o efeito desejado:
<?php
$session = ssh2_connect('example.com', 22);
ssh2_auth_pubkey_file($session, 'username', '/home/username/.ssh/id_rsa.pub',
'/home/username/.ssh/id_rsa', 'secret');
$connection_string = "ssh2.sftp://$session/";
unset($session);
$stream = fopen($connection_string . "path/to/file", 'r');
?>
unset() fecha a sessão, porque $connection_string não
contém uma referência à variável $session, somente uma string convertida
derivada dela. Isto também acontece quando a função unset() está implícita
devido a uma saída de escopo (como em uma função).