如何确定linux盒子上的最大文件名长度?
PHP编程语言中的首选。
答案 0 :(得分:5)
没有必要以编程方式确定它。它是255个字节。
编辑:你可以在很少的文件系统上使用更长的文件名(reiser,我相信),但是如果你坚持使用255,你的应用程序将可用于任何Linux安装。
答案 1 :(得分:5)
你想要pathconf
or fpathconf
,它们在PHP中没有公开。 (如果是,他们可能会posix_pathconf
。)
您也可以向getconf
发送shell,这是一个具有相同功能的命令行实用程序接口。在您的系统上试试这个:
$ getconf NAME_MAX /tmp
$ getconf PATH_MAX /tmp
答案 2 :(得分:3)
大多数 linux文件系统的最大文件长度为255.您可能最好将其用作通用常量并修改以适合您在Linux中的已知文件系统。这是一个很好的comparison of the file systems可能会被使用。那里列出了最大文件长度。
答案 3 :(得分:1)
您可以使用常量PHP_MAXPATHLEN
答案 4 :(得分:0)
我认为你可以使用realpath()。我不确定最佳方法,但例如:
$ MAXLEN = 264-strlen的(真实路径( '的index.php')));
264是255(最大路径lim)+ 9('index.php'len)。因此从极限减去电流路径长度可以得到最大电流路径长度。