Desculpe, não vai funcionar desta forma.
ssh2_tunnel cria um ponteiro de arquivo remoto, também conhecido como recurso, para ser usado em funções php como fgets() , fwrite() etc. Não é o mesmo com o encaminhamento de porta ssh. Você pode tentar abrir o túnel ssh em seu servidor php a partir do shell:
ssh example@sqldat.com -i ./ssh_key -L 5555:localhost:5432 . Enquanto a sessão estiver ativa, você poderá se conectar ao banco de dados a partir de seu script php como pg_connect("host=127.0.0.1 port=5555 dbname=dbname user=dbuser password=dbpass"); Não é para uso em produção, é claro. O que você precisa para produção é permitir o acesso ao banco de dados do seu servidor de aplicativos php. Você pode precisar editar
postgresql.conf para garantir que o servidor esteja vinculado à interface correta e pg_hba.conf para permitir conexões do seu host php.