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 相关文章推荐
如何分别全角和半角以避免乱码
Oct 09 PHP
Linux下PHP安装mcrypt扩展模块笔记
Sep 10 PHP
php中switch与ifelse的效率区别及适用情况分析
Feb 12 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
php+MySQL实现登录时验证登录名和密码是否正确
May 10 PHP
JSON两种结构之对象和数组的理解
Jul 19 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
PHP递归获取目录内所有文件的实现方法
Nov 01 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
Apr 25 PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 PHP
php数组和链表的区别总结
Sep 20 PHP
jQuery+PHP实现图片上传并提交功能
Jul 27 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
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
php以post形式发送xml的方法
2014/11/04 PHP
php连接oracle数据库及查询数据的方法
2014/12/29 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
PHP有序表查找之二分查找(折半查找)算法示例
2018/02/09 PHP
半角全角相互转换的js函数
2009/10/16 Javascript
同时使用n个window onload加载实例介绍
2013/04/25 Javascript
JS随机漂浮广告代码具体实例
2013/11/19 Javascript
JS和JQUERY获取页面大小,滚动条位置,元素位置(示例代码)
2013/12/14 Javascript
JavaScript实现带标题的图片轮播特效
2015/05/20 Javascript
Javascript中的迭代、归并方法详解
2016/06/14 Javascript
Bootstrap3 图片(响应式图片&amp;图片形状)
2017/01/04 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
Ionic2调用本地SQlite实例
2017/04/22 Javascript
AngularJS基于factory创建自定义服务的方法详解
2017/05/25 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
2018/03/09 Javascript
关于vue v-for循环解决img标签的src动态绑定问题
2018/09/18 Javascript
vue中轮训器的使用
2019/01/27 Javascript
原生js无缝轮播插件使用详解
2020/03/09 Javascript
Vue router传递参数并解决刷新页面参数丢失问题
2020/12/02 Vue.js
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
pandas数值计算与排序方法
2018/04/12 Python
windows下python虚拟环境virtualenv安装和使用详解
2019/07/16 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
python matplotlib拟合直线的实现
2019/11/19 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
2020/06/01 Python
Python-for循环的内部机制
2020/06/12 Python
python算的上脚本语言吗
2020/06/22 Python
关于探究python中sys.argv时遇到的问题详解
2021/02/23 Python
库房主管岗位职责
2013/12/31 职场文书
化学教育专业自荐信
2014/07/04 职场文书
营销计划书
2015/01/17 职场文书
兵马俑导游词
2015/02/02 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android