在 PHP 魔法常數中,共有八個常數,它們根據使用位置而改變其依賴關係。所有這些神奇的常數都是在編譯時解析的,與我們通常在運行時解析的常規常數不同。這些神奇的常數不區分大小寫。這些常數是預先定義常數,以雙底線 (__) 開頭,也以雙底線結尾。這些常數是PHP中最實用、最有用的常數。它們是簡單的變量,但具有預先定義的含義。這些常數用於列印使用者定義的輸入並處理輸出以顯示在螢幕上。
廣告 該類別中的熱門課程 魔法子彈造型 - 專業化 | 2門課程系列開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
PHP 中總共有以下八個魔法常數:
以下是 PHP 中魔法常量如何運作的例子:
在 PHP 中,我們可以在非常簡單的程式碼中使用魔術常數,也可以在日常使用的太難的程式碼中使用魔術常數。讓我們舉個例子來看看它是如何運作的:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h1>Example for __LINE__ constant</h1>"; echo "The line number is " . __LINE__ . "<br><br>";// prints the current line number i.e;7 ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h2>Example for __FILE__ constant</h2>"; echo __FILE__ . "<br><br>";//prints the full path of the file with extension ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h3>Example for __DIR__ constant</h3>"; echo __DIR__ . "<br><br>";//prints the full path of the directory where the script is placed. ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php function amount() { echo 'the function name is '. __FUNCTION__ . "<br><br>";//the function name is amount. } amount(); ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php //Using magic constant inside function. function amount() { echo 'the function name is '. __FUNCTION__ . "<br><br>";//the function name is amount. } amount(); echo 'the function name is '. __FUNCTION__ ."<br><br>"; ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h2>Example for __CLASS__</h2>"; class xyz { public function __construct() { ; } function xyz_method() { echo __CLASS__ . "<br>";//prints the name of the class xyz mentioned above. } } $a = new xyz; $a->xyz_method(); ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php class abc { function test_abc() { echo __CLASS__;//will always print parent class which is abc mentioned above. } } class xyz extends abc { public function __vowels() { ; } } $b = new xyz; $b->test_abc(); ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h4>Example for __TRAIT__</h4>"; trait create_trait { function trait() { echo __TRAIT__;//will print name of the trait create_trait mentioned above. } } class new_class { use create_trait; } $c = new new_class; $c-> trait (); ?> </body> </html>
輸出:
代碼:
<!DOCTYPE html> <html> <body> <?php echo "<h2>Example for __METHOD__</h2>"; class method { public function __parameter() { echo __METHOD__ . "<br><br>";//print method::__parameter } public function method_fun(){ echo __METHOD__;//print meth::method_fun } } $z = new method; $z->method_fun(); ?> </body> </html>
輸出:
各函數的輸出如上所述。行常數將列印儲存在本機中的檔案 leela.php 的目前行。文件常數將列印文件名和路徑,如輸出所示。 dir 常數或 dirname 將列印目前目錄路徑或提到的目錄路徑:method 和 class 常數列印程式碼中提到的方法名稱和類別名稱。如果在方法和類別之外提到常數,那麼它不會在螢幕上列印任何內容,因為它超出了範圍,同樣,上面提到了另一個常數的輸出。
在這篇文章中,我們學習了 PHP 的所有魔法常數及其用法。它可以用於小型程式到大型程式。開發者可以使用這些常數來回溯任何可能發生錯誤的位置。這些常數將幫助開發人員或使用者檢查程式碼以了解它們目前所在的位置。
以上是PHP 魔法常數的詳細內容。更多資訊請關注PHP中文網其他相關文章!