PHP: как получить URL-адрес относительного файла

Есть ли у PHP встроенная функция, которая возвращает полный URL-адрес файла, который вы объявляете с относительным путем? Мне нужно получить: "http://www.domain.com/projects/test/img/share.jpg" из "img/share.jpg" До сих пор я пробовал следующее:

 realpath('img/share.jpg'); // Returns "/home/user/www.domain.com/projects/test/img/share.jpg" 

Я также пробовал:

 dirname(__FILE__) // Returns "/home/user/www.domain.com/projects/test" 

И этот ответ гласит, что следующее может быть изменено на стороне клиента:

 "http://'.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI].'img/share.jpg" 

плюс мой путь будет меняться в зависимости от того, /test/index.php ли я из /test/index.php или просто test/ without index.php, и я не хочу жестко программировать, является ли это http или https.

У кого-нибудь есть решение для этого? Я отправлю эти файлы другому человеку, который будет загружен на свой сервер, поэтому структура папок не будет соответствовать "/home/user/www.domain.com/"