首頁 後端開發 php教程 php中的魔術常數實例詳解

php中的魔術常數實例詳解

May 03, 2017 pm 05:33 PM

什麼是魔術常數?

講解PHP常數的時候,我們知道PHP中的常數大部分都是不變的,但是有8個預定義常數會隨著他們所在代碼位置的變化而變化,這8個常數稱為魔術常數,這些特殊的常數是不區分大小寫,

PHP 的「魔術常數」如下表

號中的當前__LINE__LINE%。 __FILE__檔案的完整路徑和檔案名稱。如果用在被包含檔案中,則傳回被包含的檔案名稱。自 PHP 4.0.2 起,__FILE__ 總是包含一個絕對路徑(如果是符號連接,則是解析後的絕對路徑),而在此之前的版本有時會包含一個相對路徑。 __DIR__檔案所在的目錄。如果用在被包含檔案中,則傳回被包含的檔案所在的目錄。它等價於 dirname(__FILE__)。除非是根目錄,否則目錄中名不包括末尾的斜杠。 (PHP 5.3.0新增) __FUNCTION__函數名稱(PHP 4.3.0 新加)。自 PHP 5 起本常數傳回該函數被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。 __CLASS__類的名稱(PHP 4.3.0 新加)。自 PHP 5 起本常數傳回該類別被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。類別名稱包括其被宣告的作用區域(例如 FooBar)。注意自 PHP 5.4 起 __CLASS__ 對 trait 也起作用。當用在 trait 方法時,__CLASS__ 是呼叫 trait 方法的類別的名字__TRAIT__Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常數傳回 trait 被定義時的名字(區分大小寫)。 Trait 名稱包含其聲明的作用區(如 FooBar)__METHOD__類別的方法名稱(PHP 5.0.0 新加)。傳回該方法被定義時的名字(區分大小寫)。 __NAMESPACE__目前命名空間的名稱(區分大小寫)。此常數是在編譯時定義的(PHP 5.3.0 新增)。
函數 檢測型別
函數 檢測型
🎜🎜🎜

php中的魔術常數實例詳解上表中「__」是兩條下劃線,而不是一條「_」。

魔術常數常被用來取得當前環境資訊或記錄日誌。

下面我看一下這些魔術常數的用法:

__LINE__   取得檔案中的目前行號。

實例

<?PHP
header("content-type:text/html;charset=utf-8");
echo "这是第 ". __LINE__ ."行";
echo "<br/>";
?>
登入後複製

程式碼運作結果:

php中的魔術常數實例詳解

__FILE__   取得檔案的完整路徑和檔案名,如果使用在已包含的檔案名稱中,則傳回已包含的檔案名稱。

php中的魔術常數實例詳解

 __DIR__  取得文件所在的目錄。如果用在被包含檔案中,則傳回被包含的檔案所在的目錄。

實例

<?php
header("content-type:text/html;charset=utf-8");
echo "该文件位于 ". __DIR__ ."文件夹下";
echo "<br/>";
?>
登入後複製

程式碼運作結果:

php中的魔術常數實例詳解

__FUNCTION__  取得此函數定義時的名稱(區分大小寫

 __CLASS__  取得此類別定義時的名字(區分大小寫)

 實例php中的魔術常數實例詳解

<?php
header("content-type:text/html;charset=utf-8");
function Test() {
    echo  "该函数名为:". __FUNCTION__ ;
    echo "<br/>";
}
Test();
?>
登入後複製
METHO___777c777757777號名稱( ,若函數在類別中,則傳回類別方法名稱,

        即:  類別名稱::方法名稱。

實例

<?php
header("content-type:text/html;charset=utf-8");
class test {
    function show() {
        echo "该类名为:". __CLASS__ . "<br>";
        echo "该函数名为:". __FUNCTION__ ;
        echo "<br/>";
    }
}
$t = new test();
$t->show();
?>
登入後複製

程式碼運作結果:

php中的魔術常數實例詳解

__NAMESPACE__         當前命名空間的名稱(區分大小寫)

以上是php中的魔術常數實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

C語言中的常數是什麼,可以舉例嗎? C語言中的常數是什麼,可以舉例嗎? Aug 28, 2023 pm 10:45 PM

常量也稱為變量,一旦定義,其值在程式執行期間​​就不會改變。因此,我們可以將變數宣告為引用固定值的常數。它也被稱為文字。必須使用Const關鍵字來定義常數。語法C程式語言中使用的常數語法如下-consttypeVariableName;(or)consttype*VariableName;不同類型的常數在C程式語言中使用的不同類型的常數如下所示:整數常數-例如:1,0,34, 4567浮點數常數-例如:0.0,156.89,23.456八進制和十六進制常數-例如:十六進制:0x2a,0xaa..八進制

如何在Python中創建一個常數? 如何在Python中創建一個常數? Aug 29, 2023 pm 05:17 PM

常量和變數用於在程式設計中儲存資料值。變數通常指的是可以隨時間變化的值。而常數是一種變數類型,其值在程式執行期間​​不能被改變。在Python中只有六個內建常數可用,它們是False、True、None、NotImplemented、Ellipsis(...)和__debug__。除了這些常數之外,Python沒有任何內建資料類型來儲存常數值。範例下面示範了常數的範例-False=100輸出SyntaxError:cannotassigntoFalseFalse是Python中的內建常數,用於儲存布林值

在Java中,僅使用final關鍵字可以定義一個常數嗎? 在Java中,僅使用final關鍵字可以定義一個常數嗎? Sep 20, 2023 pm 04:17 PM

常量變數是其值固定且程式中只存在一個副本的變數。一旦你聲明了一個常數變數並給它賦值,你就不能在整個程式中再次改變它的值。與其他語言不同,Java不直接支援常數。但是,你仍然可以透過宣告一個變數為靜態和final來創建一個常數。靜態-一旦你聲明了一個靜態變量,它們將在編譯時加載到內存中,即只有一個副本可用。 Final-一旦你宣告了一個final變量,就不能再修改它的值。因此,你可以透過將實例變數宣告為靜態和final來在Java中創建一個常數。範例 示範classData{&am

PHP報錯:呼叫未定義的常數怎麼解決? PHP報錯:呼叫未定義的常數怎麼解決? Aug 26, 2023 pm 03:39 PM

PHP是一種廣泛應用於網頁開發的伺服器端腳本語言,它的靈活性和易用性使其成為許多開發人員的首選。然而,在使用PHP時,我們有時會遇到一些報錯的情況。本篇文章將重點討論"呼叫未定義的常數"錯誤,以及如何解決這個問題。一、問題描述當我們在程式碼中使用一個未定義的常數時,PHP會拋出一個致命錯誤,提示我們呼叫了一個未定義的常數。以下是一個常見的例子:echoMY_

一文帶你搞懂Python中變數與常數 一文帶你搞懂Python中變數與常數 Jul 25, 2023 pm 02:15 PM

本文基於Python基礎,主要介紹了Python基礎中變數和常數的區別,對於變數的用法做了詳細的講解,用豐富的案例 ,程式碼效果圖的展示幫助大家更好理解 。

基本資料型別常數的定義和初始化方法學習指南 基本資料型別常數的定義和初始化方法學習指南 Jan 05, 2024 pm 02:08 PM

學習基本資料型別常數的定義和初始化方法,需要具體程式碼範例在程式設計中,常常會用到各種基本資料型別,例如整數、浮點型、字元型等。在使用這些資料類型時,不僅需要了解它們的定義和用法,還需要知道如何定義和初始化它們的常數。本文將為大家介紹基本資料型態常數的定義和初始化方法,並給出具體的程式碼範例。整數常數的定義和初始化方法整數常數包括int、long、short和byt

PHP報錯:使用未定義的常數當屬性名怎麼辦? PHP報錯:使用未定義的常數當屬性名怎麼辦? Aug 17, 2023 pm 02:13 PM

PHP報錯:使用未定義的常數當屬性名怎麼辦?在PHP開發中,我們經常使用類別和物件來組織和管理程式碼。在定義一個類別的過程中,類別的屬性(即成員變數)扮演了保存資料的重要角色。然而,當我們在使用屬性時,有時會發生使用未定義的常數作為屬性名稱的錯誤。本文將介紹這種錯誤的原因,並且提供幾種解決方法。首先,讓我們來看一個簡單的例子來示範這個問題。假設我們有一個名為"Per

PHP中的命名規格:如何使用底線命名法命名常數和檔案名 PHP中的命名規格:如何使用底線命名法命名常數和檔案名 Jul 30, 2023 am 10:36 AM

PHP中的命名規範:如何使用下劃線命名法命名常數和檔案名稱在PHP程式設計中,良好的命名規範對於提高程式碼的可讀性和可維護性非常重要。本文將介紹如何使用下劃線命名法來命名常數和檔案名,並透過程式碼範例來示範。常數的命名規範在PHP中,常數的命名通常全大寫,並以以下方式劃線分隔單字。這種命名規範可以清晰地區分常數和變量,並且易於閱讀和理解。以下是一些常見的常數命名範例:def

See all articles