溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php之常量

發(fā)布時間:2020-09-26 17:31:44 來源:網(wǎng)絡(luò) 閱讀:451 作者:jjjssswww 欄目:web開發(fā)

定義常量

  常量是一個簡單值的標(biāo)識符。如同其名稱所暗示的,在腳本執(zhí)行期間一個常量一旦被定義,就不能再改變或取消定義。常量默認(rèn)為大小寫敏感。按照慣例常量標(biāo)識符總是大寫的

  常量名和其它任何PHP標(biāo)簽遵循同樣的命名規(guī)則。合法的常量名以字母或下劃線開始,后面跟著任何字母,數(shù)字或下劃線

  和超全局變量一樣,常量的范圍是全局的。不用管作用區(qū)域就可以在腳本的任何地方訪問常量

  常量只能包含標(biāo)量數(shù)據(jù)(boolean、integer、float和string)??梢远xresource常量,但應(yīng)盡量避免,因為會造成不可預(yù)料的結(jié)果

define()函數(shù)

  定義常量使用define()函數(shù),它使用三個參數(shù):首個參數(shù)定義常量的名稱,第二個參數(shù)定義常量的值,可選的第三個參數(shù)規(guī)定常量名是否對大小寫敏感,默認(rèn)是false

bool define ( string name, mixed value [, bool case_insensitive] )

php之常量

<?php$p = 'PI0';define('PI',3.14);define('PI',3.15);//無效,因為常量無法被修改定義define($p,3.14);echo PI;//3.14echo "<br>";echo PI0;//3.14?>

php之常量

const

  在PHP5.3.0以后,可以使用const關(guān)鍵字在類定義之外定義常量

  使用const關(guān)鍵字定義常量必須處于最頂端的作用區(qū)域,因為用此方法是在編譯時定義的。這就意味著不能在函數(shù)內(nèi),循環(huán)內(nèi)以及if語句之內(nèi)用const來定義常量

<?php// 以下代碼在 PHP 5.3.0 后可以正常工作const CONSTANT = 'Hello World';echo CONSTANT;?>

 

常量檢測

  對于常量來說,通常要檢測常量是否定義或檢測常量的值,涉及到defined()函數(shù)和constant()函數(shù)

defined()函數(shù)

  defined()函數(shù)用來判斷一個常量是否已經(jīng)定義,其語法格式為:

bool defined(string constants_name)

  若存在則返回true,否則返回false

  如果常量被重復(fù)定義后,PHP解析器會發(fā)出"Constant XXX already defined"的警告,提醒該常量已被定義過

php之常量

<?php 
define("PI1",3.14);$p = "PI1";$is1 = defined($p);$is2 = defined("PI2");var_dump($is1);//bool(true)var_dump($is2);//bool(false)?>

php之常量

constant()函數(shù)

  constant()函數(shù)用來返回一個常量的值,語法格式為:

mixed constant(string constant_name)

php之常量

<?php$p;define("PI1",3.14);define("PI2",3.142);$height = "中";if($height == "中"){    $p = "PI1";
}else{    $p = "PI2";
}$r = 1;$area = constant("PI") * $r * $r;echo $area;?>

php之常量

 

系統(tǒng)常量

  在php中,除了可以自己定義常量外,還預(yù)定義了一系列系統(tǒng)常量,可以在程序中直接使用來完成一些特殊功能。下面是一些在系統(tǒng)中常見的預(yù)定義常量

php之常量

PHP_OS        UNIX或WINNT等     執(zhí)行PHP解析的操作系統(tǒng)名稱PHP_VERSION   5.2.6等          當(dāng)前PHP的版本號E_ERROR       1                錯誤,導(dǎo)致PHP腳本運行停止E_WARNING     2                警告,不會導(dǎo)致PHP腳本運行停止E_PARSE       4                解析錯誤,帽程序解析器報告E_NOTICE      8                非關(guān)鍵的錯誤,例如變量未初始化
M_PI          3.1415926535898  數(shù)學(xué)中的PI值

php之常量

  完整的系統(tǒng)常量列表移步至此

php之常量

<? ; "<br />" ; "<br />"?>

php之常量

 

魔術(shù)常量

  PHP中有8個系統(tǒng)常量會根據(jù)它們使用的位置改變而改變,這樣的常量被稱為魔術(shù)常量

php之常量

__LINE__        文件中的當(dāng)前行號。__FILE__        文件的完整路徑和文件名。如果用在被包含文件中,則返回被包含的文件名。自PHP 4.0.2起,__FILE__ 總是包含一個絕對路徑(如果是符號連接,則是解析后的絕對路徑),而在此之前的版本有時會包含一個相對路徑
__DIR__         文件所在的目錄。如果用在被包括文件中,則返回被包括的文件所在的目錄。除非是根目錄,否則目錄中名不包括末尾的斜杠。(PHP 5.3.0新增)__FUNCTION__    函數(shù)名稱(PHP 4.3.0新加)。自PHP5起本常量返回該函數(shù)被定義時的名字(區(qū)分大小寫)。在PHP4中該值總是小寫字母。__CLASS__       類的名稱(PHP 4.3.0新加)。自PHP5起本常量返回該類被定義時的名字(區(qū)分大小寫)。在PHP4中該值總是小寫字母。類名包括其被聲明的作用區(qū)域(例如 Foo\Bar)__TRAIT__       Trait 的名字(PHP 5.4.0新加)。自PHP 5.4起此常量返回 trait 被定義時的名字(區(qū)分大小寫)。Trait 名包括其被聲明的作用區(qū)域(例如 Foo\Bar)__METHOD__      類的方法名(PHP 5.0.0 新加)。返回該方法被定義時的名字(區(qū)分大小寫)
__NAMESPACE__   當(dāng)前命名空間的名稱(區(qū)分大小寫)。此常量是在編譯時定義的(PHP 5.3.0 新增)

php之常量

<?phpecho __FILE__;//D:\wamp\www\1.phpecho "<br />";echo __LINE__;//11?>


向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI