使用特殊字符的PHP变量/函数/类名

gre*_*rep 16 php syntax label function

我理解下划线_是命名变量/函数/类等的可接受字符.但是我想知道是否还有其他特殊字符可以使用.我测试了一些没有运气并且已经假设很长时间没有,但我想我会看到是否有其他人知道肯定.这主要是为了审美目的,但是我想在与其他开发人员合作定义值类型等时,特殊的字符命名约定会很有用.

edo*_*ian 20

如果你检查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'
Run Code Online (Sandbox Code Playgroud)

将会解决(至少在开始时).


还可以看看:

Exotic names for methods, constants, variables and fields - Bug or Feature?

关于这个问题的一些讨论.