PHP命名大小寫敏感規則


一直覺得PHP中各種大小寫規則理不清,就連工作多年的老手們也不一定能對PHP大小寫敏感問題足夠了解。在PHP中,大小寫敏感問題的處理比較亂,大家一定要注意。即使某些地方大小寫不敏感,但在編程過程中能始終堅持“大小寫敏感”是最好不過的。下面整理了一些大小寫問題注意點:

大小寫敏感

1. 變量名區分大小寫
所有變量均區分大小寫,包括普通變量以 及$_GET,$_POST,$_REQUEST,$_COOKIE,$_SESSION,$GLOBALS,$_SERVER,$_FILES,$_ENV 等;

<?php
$abc = 'abc';
echo $abc;    //輸出'abc'
echo $aBc;    //無輸出
echo $ABC;    //無輸出
?>

 

2、常量名區分大小寫

使用define定義的常量是區分大小寫的。

<?php
define('BLOGGER','Veitor');
echo BLOGGER;    //輸出'Veitor'
echo BLOgger;    //報NOTICE提示,並輸出'BLOgger'
echo blogger;    //報NOTICE提示,並輸出'blogger'
?>

 

3、數組索引(鍵名)區分大小寫

<?php
$arr = array('one'=>'first');
echo $arr['one'];    //輸出'first'
echo $arr['One'];    //無輸出並報錯
echo $Arr['one'];    //上面講過,變量名區分大小寫,所以無輸出並報錯
?>

 

 

大小寫不敏感

1. 函數名、方法名、類名不區分大小寫

雖然這些不區分大小寫,但堅持“大小寫敏感”原則,建議還是使用與定義時相同大小寫的名字

<?php
class Test
{
    static public function Ceshi()
    {
        echo '123';
    }

    public funcion Dxx()
    {
        echo '321';
    }
}

$obj = new Test;
$obj->Dxx();    //成功實例化Test類,並調用Dxx方法輸出'321'
$obj->dxx();    //成功實例化Test類,並調用Dxx方法輸出'321'
$obj = new test;
$obj->Dxx();    //成功實例化Test類,並調用Dxx方法輸出'321'
$obj->dxx();    //成功實例化Test類,並調用Dxx方法輸出'321'

Test::Ceshi();    //輸出'123'
test::Ceshi();    //輸出'123'
Test::ceshi();    //輸出'123'
test::ceshi();    //輸出'123'
?>

 

2、魔術常量不區分大小寫

一些魔術常量包括:__LINE__、__FILE__、__DIR__、__FUNCTION__、__CLASS__、__METHOD__、 __NAMESPACE__等都不區分大小寫。

<?php
echo __LINE__;    //輸出2
echo __line__;    //輸出3
?>

 

3、 NULL、TRUE、FALSE不區分大小寫

這個知道的人應該比較多就不舉例了。

 

4、強制類型轉換不區分大小寫

如這些

(int),(integer) – 轉換成整型
(bool),(boolean) – 轉換成布爾型
(float),(double),(real) – 轉換成浮點型
(string) – 轉換成字符串
(array) – 轉換成數組
(object) – 轉換成對象

一般我們都小寫,這個問題不大。

 

總的來說,容易搞不明白的就是變量、常量、類名、方法名和函數名,把這些記住對自己會有幫助的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM