在PHP中,是否有一个函数可以执行类似于realpath()的逻辑,但是文件系统中可能不存在的文件?显然它无法解析链接等,但我的目标是查看用户提供的路径是否在特定目录(或该目录的子目录)中,而不必考虑/.././我自己的问题的路径类型。如果在文件不存在时没有返回false,则调用realpath将是完美的。
答案 0 :(得分:1)
如果您只关注文件,请尝试:
function unrealpath($path){
$rp = realpath(dirname($path));
if( false === $rp )
return false;
return $rp.basename($path);
}
如果您对现有或不存在的目录有疑虑,这将无效。
答案 1 :(得分:0)
如果你只需要删除/../一个自编写的函数就不会那么困难了。 只需将字符串拆分到数组上,迭代数组并将值插入新数组中。如果你点击..删除插入新数组中的最后一个元素。然后将第二个数组合并回一个字符串。