Вы должны знать о жестких ссылках и символических ссылках. Если вы собираетесь изменить файл, выполните статистику, чтобы проверить, является ли он обычным файлом и количество его узлов равно 1.
$subdirToCheck = "/home/mysubdir/";
$file = "relativepath/userfile";
$absfile = realpath($file);
if ($absfile !== FALSE && file_exists($absfile) &&
substr($absfile, 0, strlen($subdirToCheck)) == $subdirToCheck) {
$ls = lstat($absfile);
if (is_link($ls) || $ls["nlink"] > 1) {
//abort
}
else {
//do stuff
}
}