PHP大小写敏感规则
总的来说,容易搞不明白的就是变量、常量、类名、方法名和函数名,把这些记住对自己会有帮助的。
一 自定义变量
PHP 中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。
二 预定义变量( 超全局变量数组 )
预定义变量,它们的名称是固定的, 必须全大写, 下划线开头
$_SERVER、$_GET、$_POST、$_COOKIE、$_FILES、$_ENV、$_REQUEST、$_SESSION、$GLOBALS
三 自定义常量
常量默认为大小写敏感。传统上常量标识符总是大写的。
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
define()函数创建的常量是否区分大小写有define的第三个参数 bool $case_insensitive 决定,第三个参数如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。
const 关键字定义的常量区分大小写,此关键字一般用于类常量
四 魔术常量
有八个魔术常量它们的值随着它们在代码中的位置改变而改变。例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定。这些特殊的常量不区分大小写
五 预定义常量区分大小写(以下预定义常量只是例举几个)
内核预定义常量:是在PHP的内核中就定义好了的常量。区分大小写。
PHP_VERSION:返回PHP的版本。
PHP_OS:返回执行PHP解释器的操作系统名称。
PHP_EOL:系统换行符,Windows是(\r\n),Linux是(\n),MAC是(\r)。
标准预定义常量:PHP默认定义的常量。区分大小写。
M_PI:返回圆周率π的值。
六 关键字
只是语言结构的一部分。不能使用它们的任何一个作为常量、方法名或是类名。但是可以将它们作为变量名使用,不过这样会导致混淆。
从PHP7.0.0开始这些关键字允许被用作类的属性、常量以及类的方法名,或者接口名和traints名,除了class不能被用作常量名。
关键字不区分大小写
七 函数名、方法名、类名
函数名、方法名、类名不区分大小写
但推荐使用与定义时相同的名字
八 NULL、TRUE、FALSE不区分大小写
九 数组索引(键名)区分大小写
<?php $arr = array('one'=>'first'); echo $arr['one']; //输出'first' echo $arr['One']; //无输出并报错 echo $Arr['one']; //上面讲过,变量名区分大小写,所以无输出并报错 ?>
十 强制类型转换不区分大小写
如这些
(int),(integer) – 转换成整型
(bool),(boolean) – 转换成布尔型
(float),(double),(real) – 转换成浮点型
(string) – 转换成字符串
(array) – 转换成数组
(object) – 转换成对象
十一 php.ini配置项指令区分大小写
如 file_uploads = 1 不能写成 File_uploads = 1