PHP大小写问题:函数名和类名不区分,变量名区分


Posted in PHP onJune 17, 2013

PHP对大小写敏感问题的处理比较乱,写代码时可能偶尔出问题,所以这里总结一下。
但我不是鼓励大家去用这些规则。推荐大家始终坚持“大小写敏感”,遵循统一的代码规范。

1. 变量名区分大小写

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

2. 常量名默认区分大小写,通常都写为大写
(但没找到能改变这个默认的配置项,求解)

 <?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

PHP变量名区分大小写,函数名不区分大小写,经常被新手忽视的小细节,测试如下.

PHP变量名区分大小写测试:

<?php 
    $aaa = "3water.com"; 
    $AAA = "JB51.CN"; 
    echo $aaa.'-'.$AAA;  //3water.com-JB51.CN 
?>

PHP函数名不区分大小写测试:

<?php 
    function bbb(){ 
        echo 'abc'; 
    } 
    function BBB(){ 
        echo "Abc"; 
    } 
?>

上面这段代码会报错:( ! ) Fatal error: Cannot redeclare BBB()

PHP 相关文章推荐
php mssql 数据库分页SQL语句
Dec 16 PHP
并发下常见的加锁及锁的PHP具体实现代码
Oct 12 PHP
使用JSON实现数据的跨域传输的php代码
Dec 20 PHP
解析左右值无限分类的实现算法
Jun 20 PHP
php魔术变量用法实例详解
Nov 13 PHP
PHP使用file_get_content设置头信息的方法
Feb 14 PHP
Smarty实现页面静态化(生成HTML)的方法
May 23 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
Feb 15 PHP
几行代码轻松实现PHP文件打包下载zip
Mar 01 PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 PHP
PHP SESSION机制的理解与实例
Mar 22 PHP
PHP数据源架构模式之表入口模式实例分析
Jan 23 PHP
修改php.ini以达到屏蔽错误信息并记录日志
Jun 16 #PHP
php fsockopen伪造post与get方法的详解
Jun 14 #PHP
探讨:parse url解析URL,返回其组成部分
Jun 14 #PHP
PHP可变函数的使用详解
Jun 14 #PHP
VIM中设置php自动缩进为4个空格的方法详解
Jun 14 #PHP
探讨:如何通过stats命令分析Memcached的内部状态
Jun 14 #PHP
利用curl 多线程 模拟 并发的详解
Jun 14 #PHP
You might like
测试php连接mysql是否成功的代码分享
2014/01/24 PHP
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
Div自动滚动到末尾的代码
2008/10/26 Javascript
javascript 框架小结 个人工作经验
2009/06/13 Javascript
Jquery CheckBox全选方法代码附js checkbox全选反选代码
2010/06/09 Javascript
actionscript与javascript的区别
2011/05/25 Javascript
multiSteps 基于Jquery的多步骤滑动切换插件
2011/07/22 Javascript
js bind 函数 使用闭包保存执行上下文
2011/12/26 Javascript
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
jQuery通过点击行来删除HTML表格行的实现示例
2014/09/10 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
javascript实现点击单选按钮链接转向对应网址的方法
2015/08/12 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
2015/08/23 Javascript
jQuery Validate表单验证深入学习
2015/12/18 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
ES6中Math对象新增的方法实例详解
2017/04/25 Javascript
JavaScript中Object基础内部方法图
2018/02/05 Javascript
Angularjs实现多图片上传预览功能
2018/07/18 Javascript
vue项目部署到Apache服务器中遇到的问题解决
2018/08/24 Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
2019/03/19 jQuery
js实现小球在页面规定的区域运动
2020/06/16 Javascript
python encode和decode的妙用
2009/09/02 Python
github配置使用指南
2014/11/18 Python
Python生成随机密码
2015/03/10 Python
Python正则表达式教程之三:贪婪/非贪婪特性
2017/03/02 Python
Python简单生成8位随机密码的方法
2017/05/24 Python
python实现淘宝秒杀聚划算抢购自动提醒源码
2020/06/23 Python
基于Python列表解析(列表推导式)
2018/06/23 Python
详解CSS3中nth-child与nth-of-type的区别
2017/01/05 HTML / CSS
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
无工作经验者个人求职信范文
2013/12/22 职场文书
服务标语大全
2014/06/18 职场文书
早读课迟到检讨书
2014/09/25 职场文书
2014年图书馆个人工作总结
2014/12/18 职场文书
给老师的一封感谢信
2015/01/20 职场文书
Netty结合Protobuf进行编解码的方法
2021/06/26 Java/Android