Имена переменных PHP/function/class с использованием специальных символов
Я понимаю, что символ подчеркивания _
является допустимым символом для именования переменных/функций/классов и т.д. Однако мне было интересно, есть ли другие специальные символы, которые можно использовать. Я проверил несколько из них, не повезло и долгое время предполагал, что их нет, однако я решил, что увижу, знает ли кто-нибудь еще наверняка. Это было бы в основном для эстетических целей, однако я предполагаю, что специальное соглашение об именах символов было бы полезно при работе с другими разработчиками для определения типов значений и т.д.
Ответы
Ответ 1
Если вы проверите docs on variables
, он скажет, что:
Переменные имена соответствуют тем же правилам, что и другие метки в PHP. Правильное имя переменной начинается с буквы или подчеркивания, за которой следует любое количество букв, цифр или символов подчеркивания. В качестве регулярного выражения оно выражается следующим образом: "[a-zA-Z_\x7f-\xff] [a-zA-Z0-9_\x7f-\xff] * '
Но в основном люди согласились использовать a-zA-Z0-9_
, а не "причудливые" имена, так как они могут сломаться в зависимости от используемой кодировки.
Итак, , вы можете иметь переменную с именем $aöäüÖÄ
, но если вы сохраните ее с неправильной кодировкой, вы можете столкнуться с проблемой.
То же самое относится и к функциям тоже.
So
function fooööö($aà) { echo $aà; }
fooööö("hi"); // will just echo 'hi'
будет просто работать (по крайней мере сначала).
Также проверьте:
Exotic names for methods, constants, variables and fields - Bug or Feature?
для обсуждения по этому вопросу.
Ответ 2
Названия функций следуют тем же правилам, что и другие метки в PHP. Действительное имя функции начинается с буквы или подчеркивания, за которой следует любое количество букв, цифр или символов подчеркивания. В качестве регулярного выражения оно выражается следующим образом: [a-zA-Z_\x7f-\xff] [a-zA-Z0-9_\x7f-\xff] *.
http://www.php.net/manual/en/functions.user-defined.php
Переменные имена соответствуют тем же правилам, что и другие метки в PHP. Правильное имя переменной начинается с буквы или подчеркивания, за которой следует любое количество букв, цифр или символов подчеркивания. В качестве регулярного выражения оно выражается следующим образом: "[a-zA-Z_\x7f-\xff] [a-zA-Z0-9_\x7f-\xff] * '
http://www.php.net/manual/en/language.variables.basics.php
См. также Руководство по присвоению имен пользователей: http://www.php.net/manual/en/userlandnaming.php
Ответ 3
Действительная {переменная | function} начинается с буквы или подчеркивания, за которой следует любое количество букв, цифр или символов подчеркивания.
http://www.php.net/manual/en/functions.user-defined.php
http://www.php.net/manual/en/language.variables.basics.php
Ответ 4
Вы можете найти информацию, которую ищете Руководство по PHP. Знайте, был дан ответ:
Названия функций следуют тем же правилам, что и другие метки в PHP. Действительное имя функции начинается с буквы или подчеркивания, за которой следует любое количество букв, цифр или символов подчеркивания.
Функция как регулярное выражение: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
Информация в руководстве не отражает пространства имен (некоторые могут видеть их как часть имени функции). И с некоторыми идентификаторами информация в руководстве PHP неточна. См. PHP Syntax Regulary Express для различных элементов и ссылок в Руководство по PHP для них.
Ответ 5
Если вы хотите структурировать имена путем объединения элементов (например, функций, имен столбцов или таблиц базы данных), вы можете использовать двойное подчеркивание как разделитель:
social_security_number__check(),
musical_instrument__tune(),
vehicle__insert()
или
check__social_security_number(),
tune__musical_instrument(),
insert__vehicle()