php入门级教程:PHP大小写问题
发布:smiling 来源: PHP粉丝网 添加日期:2015-12-12 14:51:12 浏览: 评论:0
PHP大小写问题算是一个入门级的教程了,在此小编为php初学者介绍php开发中大小写的一些例子,希望可以帮助到各位。
今天写代码的时候发现自己代码的一处错误:
$m_category->Insert($data);
我调用了$m_category对象的insert方法,奇怪的是,我自己编写的框架里insert方法名是小写的,但是我这里调用的首字母大写了(公司的框架Model类的方法均为首字母大写,有时候习惯了回家写代码不容易写错)。
但是很奇怪的是,这段代码在之前的测试是通过的,并没有报错或什么,数据也正常写入了,有些思不得解,于是尝试做了一个实验。
就从控制器开始吧,我当前控制器中有一个方法是addWiki,那么我新增一个方法addwiki,然后等待了一下,IDE没有为我这个新的方法报错。松了一口气,看来PHP对大小写是敏感的。然后我尝试调用addwiki这个方法,这时候让我惊讶的事情发生了:PHP向我抛出了一个致命错误:addwiki无法被重定义。看样子PHP对方法名的大小写还是不敏感呀。
还是不死心,也许是我PHP配置的问题,于是上网查找之,找到了不少资料,原来PHP对类名和方法名是大小写不敏感的。
下面抄一些别处的资料,区分PHP大小写敏感的地方。
1.变量名区分大小写
2.常量名默认区分大小写
3.函数名、方法名、类名不区分大小写
4.魔术常量不区分大小写,推荐大写
5.NULL、TRUE、FALSE不区分大小写
除了变量名和常量名区分大小写以外,其他统统不区分。不过在我们正常的使用中,都有常量名、魔术变量使用大写的习惯,而NULL、TRUE、FALSE在不少框架中也被推荐使用大写(虽然我自己喜欢用小写),因此问题也不大。据说常量名可以设置为大小写敏感,不过没去查找这方面资料,也不清楚了,当然还是按照约定来使用大写吧。
重点就在于类、方法、函数名这一点上,好吧,我一直认为类和方法名是大小写敏感的,至今才知道:-(
不过建议还是注意大小写的好,毕竟PHP不知哪天哪个版本就改掉了这条特性,不再支持大小写不敏感的函数、方法名了
为了让各位更深入了解php中大小写我们整理了一些例子
一、大小写敏感
1.变量名区分大小写
所有变量均区分大小写,包括普通变量以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等;
- $abc = 'abcd';
- echo $abc; //输出 'abcd'
- echo $aBc; //无输出
- echo $ABC; //无输出
2.常量名默认区分大小写,通常都写为大写,但没找到能改变这个默认的配置项,求解.
- define("ABC","Hello World");
- echo ABC; //输出 Hello World
- echo abc; //输出 abc
3.php.ini配置项指令区分大小写
如 file_uploads = 1 不能写成 File_uploads = 1
二、大小写不敏感
4.函数名、方法名、类名 不区分大小写,但推荐使用与定义时相同的名字
- 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__。
echo __line__; //输出 2
echo __LINE__; //输出 3
6.NULL、TRUE、FALSE不区分大小写
- $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) – 转换成对象
- $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)
Tags: php入门教程 PHP大小写
- 上一篇:php运算符
- 下一篇:PHP的实现一个高效的数据库(文件存储,NOSQL)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)