Есть несколько разных решений.Если может быть только имя файла, будет работать решение basename ().
Однако, если это может быть путь, необходимо более сложное решение
//assume current directory, but can be set anything. Absolute path of course
$basedir = dirname(__FILE__);
//assume our files are below document root.
//Otherwise use it's root dir instead of DOCUMENT_ROOT
$filename = realpath($_SERVER['DOCUMENT_ROOT'].$_GET['file']);
if (substr($filename,0,strlen($basedir)) !== $basedir) {
header ("HTTP/1.0 403 Forbidden");
exit;
}
, также есть полезноеВариант конфигурации PHP open_basedir