Для начала нам нужно обрезать протокол. можно следующим образом
$url=str_replace('http://','',$url);
затем нам нужно удалить домен с адреса
$parts = explode('/' , $url); array_pop($parts); $path_from_root = implode(DIRECTORY_SEPARATOR, $parts);
ну и в завершении добавить относительный путь ведущий к корню сайта и взять абсолютный путь функцией realpath
в примере 2 уровень вложенности относительно корня поэтому /../../ – делаем два шага назад для корня.
$path_to_root = DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR; realpath($path_to_root.$path_from_root);
Фулл листинг
<?php function getPathFromUrl($url) { $url=str_replace('http://','',$url); $parts = explode('/' , $url); array_pop($parts); $path_from_root = implode(DIRECTORY_SEPARATOR, $parts); $path_to_root = DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR; // 2 уровень вложенности относительно корня return realpath($path_to_root.$path_from_root); } ?>