php的大小写敏感问题整理


Posted in PHP onDecember 29, 2011

PHP对大小写敏感问题的处理比较乱,写代码时可能偶尔出问题,所以这里总结一下。
但我不是鼓励大家去用这些规则。 推荐大家始终坚持“大小写敏感”,遵循统一的代码规范。
一、大小写敏感
1. 变量名区分大小写
所有变量均区分大小写,包括普通变量以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等;

<?php 
$abc = 'abcd'; 
echo $abc; //输出 'abcd' 
echo $aBc; //无输出 
echo $ABC; //无输出

2. 常量名默认区分大小写,通常都写为大写
(但没找到能改变这个默认的配置项,求解)
1 <?php 
define("ABC","Hello World"); 
echo ABC; //输出 Hello World 
echo abc; //输出 abc

3. php.ini配置项指令区分大小写
如 file_uploads = 1 不能写成 File_uploads = 1
二、大小写不敏感
4. 函数名、方法名、类名 不区分大小写,但推荐使用与定义时相同的名字
<?php 
function show(){ 
echo "Hello World"; 
} 
show(); //输出 Hello World 推荐写法 
SHOW(); //输出 Hello World

<?php 
class cls{ 
static function func(){ 
echo "hello world"; 
} 
} 
Cls::FunC(); //输出hello world

5. 魔术常量不区分大小写,推荐大写
包括:__LINE__、__FILE__、__DIR__、__FUNCTION__、__CLASS__、__METHOD__、__NAMESPACE__。
<?php 
echo __line__; //输出 2 
echo __LINE__; //输出 3

6. NULL、TRUE、FALSE不区分大小写
<?php 
$a = null; 
$b = NULL; 
$c = true; 
$d = TRUE; 
$e = false; 
$f = FALSE; 
var_dump($a == $b); //输出 boolean true 
var_dump($c == $d); //输出 boolean true 
var_dump($e == $f); //输出 boolean true

7.类型强制转换,不区分大小写,包括:
* (int),(integer) ? 转换成整型
* (bool),(boolean) ? 转换成布尔型
* (float),(double),(real) ? 转换成浮点型
* (string) ? 转换成字符串
* (array) ? 转换成数组
* (object) ? 转换成对象
<?php 
$a=1; 
var_dump($a); //输出 int 1 
$b=(STRING)$a; 
var_dump($b); //输出string '1' (length=1) 
$c=(string)$a; 
var_dump($c); //输出string '1' (length=1)
PHP 相关文章推荐
一个数据采集类
Feb 14 PHP
dede3.1分页文字采集过滤规则详说(图文教程)续四
Apr 03 PHP
比较全的PHP 会话(session 时间设定)使用入门代码
Jun 05 PHP
关于PHP内存溢出问题的解决方法
Jun 25 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
PHP中new static()与new self()的区别异同分析
Aug 22 PHP
php 删除cookie方法详解
Dec 01 PHP
php实现TCP端口检测的方法
Apr 01 PHP
SESSION存放在数据库用法实例
Aug 08 PHP
PHP 设计模式系列之 specification规格模式
Jan 10 PHP
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
Mar 14 PHP
php简单备份与还原MySql的方法
May 09 PHP
php读取mysql乱码,用set names XXX解决的原理分享
Dec 29 #PHP
php站内搜索并高亮显示关键字的实现代码
Dec 29 #PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
Dec 29 #PHP
PHP防CC攻击实现代码
Dec 29 #PHP
php curl常见错误:SSL错误、bool(false)
Dec 28 #PHP
PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)
Dec 28 #PHP
shopex主机报错误请求解决方案(No such file or directory)
Dec 27 #PHP
You might like
透析PHP的配置文件php.ini
2006/10/09 PHP
定制404错误页面,并发信给管理员的程序
2006/10/09 PHP
THINKPHP+JS实现缩放图片式截图的实现
2010/03/07 PHP
php生成略缩图代码
2012/07/16 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
PHP设计模式之观察者模式定义与用法分析
2019/04/04 PHP
IE和Mozilla的兼容性汇总event
2007/08/12 Javascript
jquery图片切换实例分析
2015/04/15 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
JavaScript中判断数据类型的方法总结
2016/05/24 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
js从外部获取图片的实现方法
2016/08/05 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
详解jQuery简单的表格应用
2016/12/16 Javascript
详解js中Number()、parseInt()和parseFloat()的区别
2016/12/20 Javascript
解决OneThink中无法异步提交kindeditor文本框中修改后的内容方法
2017/05/05 Javascript
说说AngularJS中的$parse和$eval的用法
2017/09/14 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
Angular 实现输入框中显示文章标签的实例代码
2018/11/07 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
jQuery模拟html下拉多选框的原生实现方法示例
2019/05/30 jQuery
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
安装dbus-python的简要教程
2015/05/05 Python
python opencv读mp4视频的实例
2018/12/07 Python
Python常用库大全及简要说明
2020/01/17 Python
python super用法及原理详解
2020/01/20 Python
日本著名的平价时尚女性购物网站:Fifth
2016/08/24 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
实习协议书
2015/01/27 职场文书
golang 定时任务方面time.Sleep和time.Tick的优劣对比分析
2021/05/05 Golang
Navicat for MySQL的使用教程详解
2021/05/27 MySQL
如何用六步教会你使用python爬虫爬取数据
2022/04/06 Python