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

2022-08-30 23:14:26

我知道下划线是命名变量/函数/类等的可接受字符。但是我想知道是否有任何其他可以使用的特殊字符。我测试了一些没有运气,并且很长一段时间都认为没有,但是我想我会看看是否有其他人确切知道。这主要是出于美学目的,但是我认为在与其他开发人员一起定义值类型等时,特殊的字符命名约定会很有用。_


答案 1

如果你检查变量上的文档,它说:

变量名称遵循与 PHP 中其他标签相同的规则。有效的变量名称以字母或下划线开头,后跟任意数量的字母、数字或下划线。作为正则表达式,它将表示为:“[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*”

但基本上人们已经同意只使用而不是“花哨”的名称,因为它们可能会根据所使用的编码而中断。a-zA-Z0-9_

因此,您可以拥有一个名为 $a öäüÖÄ 的变量,但是如果您使用错误的编码保存该变量,则可能会遇到麻烦


顺便说一句,函数也是如此。

所以

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


推荐