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 相关文章推荐
PHP函数spl_autoload_register()用法和__autoload()介绍
Feb 04 PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
Oct 03 PHP
thinkphp控制器调度使用示例
Feb 24 PHP
PHP exif扩展方法开启详解
Jul 28 PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
Aug 21 PHP
配置eAccelerator和XCache扩展来加速PHP程序的执行
Dec 22 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
Sep 19 PHP
PHP 以POST方式提交XML、获取XML,解析XML详解及实例
Oct 26 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
Sep 04 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
Feb 21 PHP
PHP接入支付宝接口失效流程详解
Nov 10 PHP
php swoft框架实例用法
Dec 22 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中addslashes()和stripslashes()实现字符串转义和还原用法实例
2016/01/07 PHP
[原创]php简单隔行变色功能实现代码
2016/07/09 PHP
php获取开始与结束日期之间所有日期的方法
2016/11/29 PHP
php微信公众号开发之欢迎老朋友
2018/10/20 PHP
javascript 传统事件模型构造的事件监听器实现代码
2010/05/31 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
关于Javascript作用域链的八点总结
2013/12/06 Javascript
js图片轮播手动切换效果
2015/11/10 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
VueJs与ReactJS和AngularJS的异同点
2016/12/12 Javascript
ES6新特性五:Set与Map的数据结构实例分析
2017/04/21 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
Vue 动态设置路由参数的案例分析
2018/04/24 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
React+TypeScript+webpack4多入口配置详解
2019/08/08 Javascript
Python复制目录结构脚本代码分享
2015/03/06 Python
python3中bytes和string之间的互相转换
2017/02/09 Python
Python基于numpy灵活定义神经网络结构的方法
2017/08/19 Python
python实现报表自动化详解
2017/11/16 Python
numpy使用技巧之数组过滤实例代码
2018/02/03 Python
小白入门篇使用Python搭建点击率预估模型
2018/10/12 Python
Python爬取商家联系电话以及各种数据的方法
2018/11/10 Python
Python中利用LSTM模型进行时间序列预测分析的实现
2019/07/26 Python
利用Python校准本地时间的方法教程
2019/10/31 Python
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
本科生的职业生涯规划范文
2014/01/09 职场文书
高中生物教学反思
2014/02/05 职场文书
护士个人自我鉴定
2014/03/24 职场文书
应届毕业生求职信
2014/05/26 职场文书
部门2014年度工作总结
2014/11/12 职场文书
HTML5 语义化标签(移动端必备)
2021/08/23 HTML / CSS
十大最强岩石系宝可梦,怪颚龙实力最强,第七破坏力很强
2022/03/18 日漫