Ответ 1
Как правило, такой предел накладывается угрозой насилия со стороны других людей, которые взаимодействуют с вашим кодом.
Если бы я хотел написать очень длинное имя переменной, например:
$this_is_my_variable_that_does_something_in_the_following_function_and_provides_some_information_with_which_the_function_relies_upon_to_do_all_the_work_it_needs = null;
будет работать? тот же вопрос для имен функций/методов
Как правило, такой предел накладывается угрозой насилия со стороны других людей, которые взаимодействуют с вашим кодом.
Из документации:
Имена переменных следуют тем же правилам как и другие метки в PHP. Действительный имя переменной начинается с буквы или подчеркивание, за которым следует любое число букв, цифр или подчеркиваний
То же самое относится и к именам функций, как указано здесь.
Предел в переменной/функции/методе/длина имени класса не существует.
Комментарии выше указывают, что это свойство не должно использоваться. Это справедливо только тогда, когда речь идет о человеко-читабельном/человеческом ремонте.
Однако это чрезвычайно полезная функция PHP, которая очень хорошо используется во множестве очень популярных проектов, таких как Twig на пример, который генерирует классы, например (фрагмент):
class __TwigTemplate_9601167421099bbb502d119e674fed3fb71769eef256903648c9c2b4b6faa436 extends \Twig_Template {
protected function doDisplay(array $context, array $blocks = array())
{
$__internal_0abebc74dd811fd7b4cfa4c6a2fdf870d7723c04e8daf6926b04914d6644935f = $this->env->getExtension("native_profiler");
}
}
У меня была возможность воспользоваться тем же свойством, что и в моих проектах.
Нет ограничений - но это очень не рекомендуется, поскольку он создает нечитаемый код...
PHP не устанавливает ограничение длины на его идентификаторы.
Тем не менее, я не уверен, почему кто-нибудь захочет создать имя переменной в 160 символов. Надеюсь, это гипотетический вопрос.
PHP не имеет никаких ограничений для имени переменной. И я предлагаю, чтобы имя переменной содержало определение данных, которые вы собираетесь в нее хранить.
Цитата связана с постом:
Любой может написать код, понятный компьютеру, попытаться написать код, понятный человеку ".