php的大小寫敏感問題整理
更新時(shí)間:2011年12月29日 23:47:17 作者:
今天在開發(fā)php的過程中,因?yàn)槊笮懙膯栴}導(dǎo)致代碼錯(cuò)誤,所以從網(wǎng)上整理了php的大小寫敏感的一些資料,需要的朋友可以參考下。
PHP對(duì)大小寫敏感問題的處理比較亂,寫代碼時(shí)可能偶爾出問題,所以這里總結(jié)一下。
但我不是鼓勵(lì)大家去用這些規(guī)則。 推薦大家始終堅(jiān)持“大小寫敏感”,遵循統(tǒng)一的代碼規(guī)范。
一、大小寫敏感
1. 變量名區(qū)分大小寫
所有變量均區(qū)分大小寫,包括普通變量以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等;
<?php
$abc = 'abcd';
echo $abc; //輸出 'abcd'
echo $aBc; //無輸出
echo $ABC; //無輸出
2. 常量名默認(rèn)區(qū)分大小寫,通常都寫為大寫
(但沒找到能改變這個(gè)默認(rèn)的配置項(xiàng),求解)
1 <?php
define("ABC","Hello World");
echo ABC; //輸出 Hello World
echo abc; //輸出 abc
3. php.ini配置項(xiàng)指令區(qū)分大小寫
如 file_uploads = 1 不能寫成 File_uploads = 1
二、大小寫不敏感
4. 函數(shù)名、方法名、類名 不區(qū)分大小寫,但推薦使用與定義時(shí)相同的名字
<?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. 魔術(shù)常量不區(qū)分大小寫,推薦大寫
包括:__LINE__、__FILE__、__DIR__、__FUNCTION__、__CLASS__、__METHOD__、__NAMESPACE__。
<?php
echo __line__; //輸出 2
echo __LINE__; //輸出 3
6. NULL、TRUE、FALSE不區(qū)分大小寫
<?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.類型強(qiáng)制轉(zhuǎn)換,不區(qū)分大小寫,包括:
* (int),(integer) – 轉(zhuǎn)換成整型
* (bool),(boolean) – 轉(zhuǎn)換成布爾型
* (float),(double),(real) – 轉(zhuǎn)換成浮點(diǎn)型
* (string) – 轉(zhuǎn)換成字符串
* (array) – 轉(zhuǎn)換成數(shù)組
* (object) – 轉(zhuǎn)換成對(duì)象
<?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)
但我不是鼓勵(lì)大家去用這些規(guī)則。 推薦大家始終堅(jiān)持“大小寫敏感”,遵循統(tǒng)一的代碼規(guī)范。
一、大小寫敏感
1. 變量名區(qū)分大小寫
所有變量均區(qū)分大小寫,包括普通變量以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等;
復(fù)制代碼 代碼如下:
<?php
$abc = 'abcd';
echo $abc; //輸出 'abcd'
echo $aBc; //無輸出
echo $ABC; //無輸出
2. 常量名默認(rèn)區(qū)分大小寫,通常都寫為大寫
(但沒找到能改變這個(gè)默認(rèn)的配置項(xiàng),求解)
復(fù)制代碼 代碼如下:
1 <?php
define("ABC","Hello World");
echo ABC; //輸出 Hello World
echo abc; //輸出 abc
3. php.ini配置項(xiàng)指令區(qū)分大小寫
如 file_uploads = 1 不能寫成 File_uploads = 1
二、大小寫不敏感
4. 函數(shù)名、方法名、類名 不區(qū)分大小寫,但推薦使用與定義時(shí)相同的名字
復(fù)制代碼 代碼如下:
<?php
function show(){
echo "Hello World";
}
show(); //輸出 Hello World 推薦寫法
SHOW(); //輸出 Hello World
復(fù)制代碼 代碼如下:
<?php
class cls{
static function func(){
echo "hello world";
}
}
Cls::FunC(); //輸出hello world
5. 魔術(shù)常量不區(qū)分大小寫,推薦大寫
包括:__LINE__、__FILE__、__DIR__、__FUNCTION__、__CLASS__、__METHOD__、__NAMESPACE__。
復(fù)制代碼 代碼如下:
<?php
echo __line__; //輸出 2
echo __LINE__; //輸出 3
6. NULL、TRUE、FALSE不區(qū)分大小寫
復(fù)制代碼 代碼如下:
<?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.類型強(qiáng)制轉(zhuǎn)換,不區(qū)分大小寫,包括:
* (int),(integer) – 轉(zhuǎn)換成整型
* (bool),(boolean) – 轉(zhuǎn)換成布爾型
* (float),(double),(real) – 轉(zhuǎn)換成浮點(diǎn)型
* (string) – 轉(zhuǎn)換成字符串
* (array) – 轉(zhuǎn)換成數(shù)組
* (object) – 轉(zhuǎn)換成對(duì)象
復(fù)制代碼 代碼如下:
<?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)
相關(guān)文章
PHP企業(yè)級(jí)應(yīng)用之常見緩存技術(shù)篇
用的最廣的例子看Discuz的搜索功能,把結(jié)果ID緩存到一個(gè)表中,下次搜索相同關(guān)鍵字時(shí)先搜索緩存表。2011-01-01PHP htmlspecialchars()函數(shù)用法與實(shí)例講解
今天小編就為大家分享一篇關(guān)于PHP htmlspecialchars()函數(shù)用法與實(shí)例講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03整合了前面的PHP數(shù)據(jù)庫(kù)連接類~~做成一個(gè)分頁(yè)類!
整合了前面的PHP數(shù)據(jù)庫(kù)連接類~~做成一個(gè)分頁(yè)類!...2006-11-11PHP的mysqli_rollback()函數(shù)講解
今天小編就為大家分享一篇關(guān)于PHP的mysqli_rollback()函數(shù)講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01php面向?qū)ο笕ヂ?(十六) 對(duì)象的串行化
有時(shí)候需要把一個(gè)對(duì)象在網(wǎng)絡(luò)上傳輸,為了方便傳輸,可以把整個(gè)對(duì)象轉(zhuǎn)化為二進(jìn)制串.2009-09-09多php服務(wù)器實(shí)現(xiàn)多session并發(fā)運(yùn)行
多php服務(wù)器實(shí)現(xiàn)多session并發(fā)運(yùn)行...2006-10-10