我理解下划线_
是命名变量/函数/类等的可接受字符。但是我想知道是否还有其他特殊字符可以使用。我测试了一些没有运气并且已经假设很长时间没有,但我想我会看到是否有其他人知道肯定。这主要是为了美学目的,但是我想在与其他开发人员合作定义值类型等时,特殊的字符命名约定会很有用。
答案 0 :(得分:18)
如果您检查docs on variables
它说:
变量名遵循与PHP中其他标签相同的规则。有效的变量名称以字母或下划线开头,后跟任意数量的字母,数字或下划线。作为正则表达式,它将表达为:'[a-zA-Z_ \ x7f- \ xff] [a-zA-Z0-9_ \ x7f- \ xff] *'
但基本上人们同意只使用a-zA-Z0-9_
而不是“花哨”的名字,因为它们可能会因使用的编码而中断。
所以你可以拥有一个名为$aöäüÖÄ
的变量,但是如果你用错误的编码保存它,你可能会遇到麻烦。
同样适用于功能btw。
所以
function fooööö($aà) { echo $aà; }
fooööö("hi"); // will just echo 'hi'
将会解决(至少在开始时)。
同时退房:
Exotic names for methods, constants, variables and fields - Bug or Feature?
关于这个问题的一些讨论。
答案 1 :(得分:3)
函数名称遵循与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
另请参阅Userland命名指南:http://www.php.net/manual/en/userlandnaming.php
答案 2 :(得分:2)
有效{变量| function} name以字母或下划线开头,后跟任意数量的字母,数字或下划线。
http://www.php.net/manual/en/functions.user-defined.php http://www.php.net/manual/en/language.variables.basics.php
答案 3 :(得分:2)
您可以找到您正在寻找PHP手册的信息。知道了,已经回答:
函数名称遵循与PHP中其他标签相同的规则。有效的函数名称以字母或下划线开头,后跟任意数量的字母,数字或下划线。
Function作为正则表达式:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
手册中的信息不反映命名空间(有些人可能会将其视为功能名称的一部分)。有些标识符,PHP手册中的信息并不准确。有关各种元素以及PHP手册的链接,请参阅PHP Syntax Regulary Expressed。
答案 4 :(得分:1)
如果要通过组合元素(例如函数,数据库列或表名)来构造名称,可以使用双下划线作为分隔符:
social_security_number__check(),
musical_instrument__tune(),
vehicle__insert()
或
check__social_security_number(),
tune__musical_instrument(),
insert__vehicle()