Rumah > pembangunan bahagian belakang > tutorial php > Apakah pemalar ajaib dalam PHP? Apakah pemalar ajaib? (Ringkaskan)

Apakah pemalar ajaib dalam PHP? Apakah pemalar ajaib? (Ringkaskan)

青灯夜游
Lepaskan: 2023-04-10 14:08:01
ke hadapan
2785 orang telah melayarinya

Apakah pemalar ajaib dalam PHP? Apakah pemalar ajaib? (Ringkaskan)

Kami telah mempelajari beberapa kaedah sihir yang biasa digunakan sebelum ini. Selain kaedah sihir, PHP juga menyediakan beberapa pemalar ajaib ringkasan.

Malah, PHP juga menyediakan banyak pemalar tetapi semuanya bergantung pada pelbagai pustaka sambungan beberapa pemalar adalah universal dan mengikut lokasi kod di mana ia berada untuk menyediakan beberapa maklumat berkaitan lokasi ** *Malar Sihir***.

Pemalar ajaib adalah tidak peka huruf besar-besaran, __LINE__ dan __line__ adalah sama, tetapi untuk pembangunan kejuruteraan, pemalar hendaklah dalam huruf besar sebanyak mungkin.

__LINE__

Nombor baris semasa dalam fail.

echo __LINE__ . PHP_EOL; // 3

function testLine()
{
    echo __LINE__ . PHP_EOL; // 7
}

class TestLineClass
{
    function testLine()
    {
        echo __LINE__ . PHP_EOL; // 14
    }
}

testLine();
$test = new TestLineClass();
$test->testLine();
Salin selepas log masuk

__FAIL__

Laluan penuh dan nama fail fail. Jika digunakan dalam fail yang disertakan, mengembalikan nama fail yang disertakan. Sejak PHP 4.0.2, __FILE__ sentiasa mengandungi laluan mutlak (atau laluan mutlak yang diselesaikan dalam kes pautan simbolik), manakala versi sebelum itu kadangkala mengandungi laluan relatif.

echo __FILE__ . PHP_EOL; // D:\phpproject\php\newblog\php-magic-constant.php
Salin selepas log masuk

__DIR__

Direktori tempat letak fail. Jika digunakan dalam fail yang disertakan, mengembalikan direktori tempat fail yang disertakan berada. Ia bersamaan dengan diname(__FILE__). Nama direktori tidak termasuk garis miring mengekor melainkan ia adalah direktori akar. (Baharu dalam PHP 5.3.0) =

echo __DIR__ . PHP_EOL; // D:\phpproject\php\newblog
Salin selepas log masuk

__FUNCTION__

Nama fungsi (baharu dalam PHP 4.3.0). Memandangkan PHP 5 pemalar ini mengembalikan nama fungsi seperti yang ditakrifkan (sensitif huruf besar-besaran). Dalam PHP 4 nilai ini sentiasa huruf kecil.

echo __FUNCTION__ . PHP_EOL; // 啥都没输出
function testFunction()
{
    echo __FUNCTION__ . PHP_EOL; // testFunction
}

class TestFunctionClass
{
    function testFunction1()
    {
        echo __FUNCTION__ . PHP_EOL; // testFunction1
    }
}

testFunction();
$test = new TestFunctionClass();
$test->testFunction1();
Salin selepas log masuk

__CLASS__

Nama kelas (baharu dalam PHP 4.3.0). Sejak PHP 5 pemalar ini mengembalikan nama kelas apabila ia ditakrifkan (sensitif huruf besar-besaran). Dalam PHP 4 nilai ini sentiasa huruf kecil. Nama kelas termasuk skop di mana ia diisytiharkan (cth. FooBar). Ambil perhatian bahawa sejak PHP 5.4 __CLASS__ juga berfungsi untuk ciri. Apabila digunakan dalam kaedah trait, __CLASS__ ialah nama kelas yang memanggil kaedah trait.

echo __CLASS__ . PHP_EOL; // 什么也没有
function testClass()
{
    echo __CLASS__ . PHP_EOL; // 什么也没有
}

trait TestClassTrait
{
    function testClass2()
    {
        echo __CLASS__ . PHP_EOL; // TestClassClass
    }
}

class TestClassClass
{
    use TestClassTrait;

    function testClass1()
    {
        echo __CLASS__ . PHP_EOL; // TestClassClass
    }
}

testClass();
$test = new TestClassClass();
$test->testClass1();
$test->testClass2();
Salin selepas log masuk

__TRAIT__

Nama Trait (baharu dalam PHP 5.4.0). Memandangkan PHP 5.4 pemalar ini mengembalikan nama sifat seperti yang ditakrifkan (sensitif huruf besar-kecil). Nama sifat termasuk skop di mana ia diisytiharkan (cth. FooBar).

echo __TRAIT__ . PHP_EOL; // 什么也没有
function testTrait()
{
    echo __TRAIT__ . PHP_EOL; // 什么也没有
}

trait TestTrait
{
    function testTrait2()
    {
        echo __TRAIT__ . PHP_EOL; // TestTrait
    }
}

class TestTraitClass
{
    use TestTrait;

    function testTrait1()
    {
        echo __TRAIT__ . PHP_EOL; // 什么也没有
    }
}

testTrait();
$test = new TestTraitClass();
$test->testTrait1();
$test->testTrait2();
Salin selepas log masuk

__KAEDAH__

Nama kaedah kelas (baru ditambah dalam PHP 5.0.0). Mengembalikan nama kaedah seperti yang ditakrifkan (sensitif huruf besar-kecil).

echo __METHOD__ . PHP_EOL; // 什么也没有
function testMethod()
{
    echo __METHOD__ . PHP_EOL; // testMethod
}

class TestMethodClass
{
    function testMethod1()
    {
        echo __METHOD__ . PHP_EOL; // TestMethodClass::testMethod1
    }
}

testMethod();
$test = new TestMethodClass();
$test->testMethod1();
Salin selepas log masuk

__NAMESPACE__

Nama ruang nama semasa (sensitif huruf besar-kecil). Pemalar ini ditakrifkan pada masa penyusunan (baru dalam PHP 5.3.0).

echo __NAMESPACE__ . PHP_EOL; // test\magic\constant
class TestNameSpaceClass
{
    function testNamespace()
    {
        echo __NAMESPACE__ . PHP_EOL; // test\magic\constant
    }
}

$test = new TestNameSpaceClass();
$test->testNamespace();
Salin selepas log masuk

Kod penuh: https://github.com/zhangyue0503/php/blob/master/newblog/php-magic-constant.php

Disyorkan Kajian: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apakah pemalar ajaib dalam PHP? Apakah pemalar ajaib? (Ringkaskan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:juejin.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan