Двумя вещами, которые я люблю, являются свойства Automatic, таким образом, можно свернуть код вниз еще больше:
private string _name;
public string Name
{
get
{
return _name;
}
set
{
_name = value;
}
}
становится
public string Name { get; set;}
Также объектные инициализаторы:
Employee emp = new Employee();
emp.Name = "John Smith";
emp.StartDate = DateTime.Now();
становится
Employee emp = new Employee {Name="John Smith", StartDate=DateTime.Now()}
Вам нужен pathconf
или fpathconf
, которые (пока) не представлены в PHP. (Когда это так, это, вероятно, будет posix_pathconf
.)
Вы также можете выполнить командный интерпретатор getconf
, служебный интерфейс командной строки для той же функциональности. Попробуйте это в своей системе:
$ getconf NAME_MAX / tmp
$ getconf PATH_MAX / tmp
Я думаю, вы могли бы использовать realpath (). Я не уверен, что это лучший подход, но, например:
$ maxlen = 264-strlen (realpath ('index.php')));
264 равно 255 (max path lim) + 9 ('index. php 'len). Таким образом, вычитание текущей длины пути из предела дает вам максимальную текущую длину пути.
Максимальная длина файла для большинства файловых систем Linux составляет 255. Вам, вероятно, лучше всего использовать это как общую константу и изменить ее, чтобы она соответствовала вашей известной файловой системе в Linux. . Вот хорошее сравнение файловых систем , которые могут быть использованы. Там указана максимальная длина файла.
программно определять его не нужно. это 255 байт.
edit: вы можете иметь более длинные имена файлов в очень немногих файловых системах (я полагаю, reiser), но если вы придерживаетесь 255, ваше приложение будет использоваться в любой установке Linux.