Опубликовано

Определяем физический путь изображения по url

Для начала нам нужно обрезать протокол. можно следующим образом

$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);
}

?>

 

 

Добавить комментарий

Ваш e-mail не будет опубликован.