在本教程中,您將學(xué)習(xí)如何使用PHP魔術(shù)常量。
在PHP常量一章中,我們學(xué)習(xí)了如何在PHP腳本中定義和使用常量。
此外,PHP還提供了一組特殊的預(yù)定義常量,這些常量根據(jù)使用它們的位置而變化。這些常量稱為魔術(shù)常量。例如,__line__的值取決于它在腳本中使用的行。
魔術(shù)常量以兩個(gè)下劃線開頭,以兩個(gè)下劃線結(jié)尾。以下部分描述了一些最有用的PHP魔術(shù)常量。
__LINE__常量返回文件的當(dāng)前行號(hào),如下所示:
<?php echo "Line number " . __LINE__ . "<br>"; // 輸出: Line number 2 echo "Line number " . __LINE__ . "<br>"; // 輸出: Line number 3 echo "Line number " . __LINE__ . "<br>"; // 輸出: Line number 4 ?>測試看看?/?
__FILE__常量返回正在執(zhí)行的PHP文件的完整路徑和名稱。如果在include中使用,則返回包含文件的名稱。
<?php //顯示此文件的絕對路徑 echo "此文件的完整路徑為: " . __FILE__; ?>測試看看?/?
__DIR__常量返回文件的目錄。如果在include中使用,則返回包含文件的目錄。這是一個(gè)實(shí)例:
<?php // 顯示此文件的目錄 echo "此文件的目錄為: " . __DIR__; ?>測試看看?/?
__FUNCTION__常量返回當(dāng)前函數(shù)的名稱。
<?php function myFunction(){ echo "函數(shù)名稱是 - " . __FUNCTION__; } myFunction(); // 輸出: 函數(shù)名稱是 - myFunction ?>測試看看?/?
__CLASS__常量返回當(dāng)前類的名稱。這是一個(gè)實(shí)例:
<?php class MyClass { public function getClassName(){ return __CLASS__; } } $obj = new MyClass(); echo $obj->getClassName(); // 輸出: MyClass ?>測試看看?/?
__METHOD__常量返回當(dāng)前類方法的名稱。
<?php class Sample { public function myMethod(){ echo __METHOD__; } } $obj = new Sample(); $obj->myMethod(); // 輸出: Sample::myMethod ?>測試看看?/?
__NAMESPACE__常量返回當(dāng)前命名空間的名稱。
<?php namespace MyNamespace; class MyClass { public function getNamespace(){ return __NAMESPACE__; } } $obj = new MyClass(); echo $obj->getNamespace(); // 輸出: MyNamespace ?>測試看看?/?