fsockopen
возвращает ресурс потока.Я искал документацию по PHP и не могу найти способ получить клиентский порт из потокового ресурса.
Однако, если вы перейдете на один уровень ниже и используете сокеты, вы легко сможете получить эту информацию.http://www.php.net/manual/en/book.sockets.php
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_connect($socket, 'stackoverflow.com', 80);
socket_getsockname($socket, $host, $port);
var_dump($port);
socket_close($socket);