Pardon, takto to nepůjde. ssh2_tunnel vytvoří ukazatel na vzdálený soubor, neboli prostředek, který se má použít ve funkcích php, jako je fgets() , fwrite() atd. S přesměrováním portů ssh to není stejné.
Můžete zkusit otevřít ssh tunel na vašem php serveru ze shellu:ssh example@sqldat.com -i ./ssh_key -L 5555:localhost:5432 . Zatímco je relace aktivní, měli byste být schopni se připojit k databázi z vašeho php skriptu jako pg_connect("host=127.0.0.1 port=5555 dbname=dbname user=dbuser password=dbpass");
Samozřejmě to není pro výrobní použití. Co potřebujete pro produkci, je umožnit přístup k databázi z vašeho php aplikačního serveru. Možná budete muset upravit postgresql.conf abyste zajistili, že je server navázán na správné rozhraní, a pg_hba.conf pro povolení připojení z vašeho hostitele php.