PHP大小写敏感规则

作者: JONE 分类: 编程 发布时间: 2017-08-12 14:02

总的来说,容易搞不明白的就是变量、常量、类名、方法名和函数名,把这些记住对自己会有帮助的。

一 自定义变量

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