Проверяем путь: разрешаем или запрещаем
убираем верхнюю директорию из пути
РАЗ.
Если необходимо установить, является ли запрашиваемый путь разрешённым в вашем скрипте, который лежит на верхнем разрешённом уровне
// пусть есть
$path[] = "some/../path/to/file";
$path[] = "/other/path/to/file";
// и реальный разрешённый путь
$restriced_path = dirname(__FILE__)."/";
// получаем реальные пути
$real_path[0] = realpath($path1); // -> "/path/to/your/restrict/path/to/file"
$real_path[1] = realpath($path2); // -> "/other/path/to/file"
// проверяем их
foreach($real_path as $pathn)
{
if ( ($r=strpos($pathn,$restriced_path))!== false && $r == 0)
{
echo "Path $pathn is allowed";
}
else
echo "Path $pathn is denied";
}
Два.
Если необходимо вырезать верхний уровень директорий
Т.е. /dir/path/to/file -> /path/to/file
$path = "/dir/path/to/file";
$path = ltrim($path,"\\/");
$path = strpbrk($path,"\\/");
echo $path;
вот и всё