Blog

Mengenal 9 Magic Constants di PHP yang Mungkin Sering Kamu Gunakan

PHP memiliki banyak konstanta yang siap pakai (predefined) tanpa harus dibuat.

Konstanta adalah sebuah nilai yang tidak akan pernah berubah dan tidak bisa diubah.

Namun, ada 9 konstanta ajaib (magic constant) di PHP yang akan selalu berubah nilainya tergantung pada penggunaannya.

Apa saja itu? Mari kita bahas!

1. Konstanta __LINE__

Konstanta ini akan berisi sebuah nilai yang menyatakan nomer baris saat itu.

Contoh:

<?php

echo “Ini beris pertama<br>”;

echo “Ini baris ke: ” . __LINE__.”<br>”;

echo “ini baruus ketiga<br>”;

?>

Hasilnya:

Hasil Magic Constants LINE

Kenapa hasilnya 3?

Karena lokasi konstanta __LINE__ berada di baris ke-3. Ini bisa kita lihat dengan teks editor.

Hasil Magic Constants LINE

2. Konstanta __FILE__

Konstanta ini akan berisi alamat lengkap (path) dari file PHP.

Contoh:

<?php

echo “File ini berada di: ” . __FILE__;

?>

Hasilnya:

Hasil Magic Constants FILE

3. Konstanta __DIR__

Hampir sama dengan konstanta __FILE__, konstanta __DIR__ akan berisi alamat direktori dari file PHP.

Contoh:

<?php

echo “File ini berada di direktori: ” . __DIR__;

?>

Hasilnya:

Hasil Magic Constants DIR

Konstata __DIR__ biasanya digunakan untuk mengimpor file lain seperti ini:

<?php include __DIR__.”/config.php”; ?>

4. Konstanta __FUNCTION__

Konstanta ini akan berisi nama fungsi.

Contoh:

<?php

function aku_lapar() {

    echo “Nama fungsi ini adalah: ” . __FUNCTION__;

}

// panggil fungsi

aku_lapar();

?>

Hasilnya:

Hasil Magic Constants FUNCTION

5. Konstanta __CLASS__

Konstanta __CLASS__ akan berisi nama dari class.

Contoh:

<?php

class ManusiaSerigala {

    function printClassName(){

        echo “Nama class adalah: “.__CLASS__;

    }

}

// membuat objek

$aku = new ManusiaSerigala();

$aku->printClassName();

?>

Hasilnya:

Hasil Magic Constants CLASS

6. Konstanta __TRAIT__

Konstanta __TRAIT__ akan berisi nama trait dan namespace.

Contoh:

<?php

// membuat namespace

namespace Enemy;

// membuat trait

trait Makhluk {

    function printTrait() {

        echo “Nama Trait adalah: “.__TRAIT__;

    }

}

class ManusiaSerigala {

    use Makhluk;

}

// membuat objek

$aku = new ManusiaSerigala();

$aku->printTrait();

?>

Hasilnya:

Hasil Magic Constants TRAIT

7. Konstanta __METHOD__

Konstanta __METHOD__ sama seperti konstanta __FUNCTION__. Ia akan berisi nama method dan class tempat ia digunakan.

Contoh:

<?php

class ManusiaSerigala {

    function lari(){

        echo “ini adalah method: “.__METHOD__.”<br>”;

    }

    function lompat(){

        echo “ini adalah method: “.__METHOD__.”<br>”;

    }

}

// membuat objek

$aku = new ManusiaSerigala();

$aku->lari();

$aku->lompat();

?>

Hasilnya:

Hasil Magic Constants METHOD

8. Konstanta __NAMESPACE__

Konstanta __NAMESPACE__ akan berisi nama namespace.

Contoh:

<?php

// membuat namespace

namespace Enemy;

class ManusiaSerigala {

    function printNamaNamespace(){

        echo “Nama namespace adalah: “.__NAMESPACE__;

    }

}

// membuat objek

$aku = new ManusiaSerigala();

$aku->printNamaNamespace();

?>

Hasilnya:

Hasil Magic Constants NAMESPACE

9. Konstanta ClassName::class

Hampir sama seperi __TRAIT__, konstanta ClassName::class akan berisi nama class dan namespace.

Contoh:

<?php

namespace Makhluk {

    class ManusiaSerigala {

    }

    echo “Nama class adalah: “.ManusiaSerigala::class;

}

?>

Hasilnya:

Hasil Magic Constants ClassName::class

Baca juga: Membuat Pemrograman Web (PHP) di Linux

Leave your thought here

Read More

World AI Show Malaysia 2025 Hari Pertama: 1.500 Pemimpin Teknologi dan Inovator Berkumpul untuk Mendorong Masa Depan Kecerdasan Buatan Asia Tenggara

alya 01/11/2025

Kuala Lumpur, Malaysia Hari pertama “World AI Show Malaysia 2025” resmi berakhir dengan sukses besar, menandai salah satu tonggak terpenting dalam perjalanan ekosistem kecerdasan buatan&hellip;

Samsung dan NVIDIA Umumkan Kolaborasi Strategis untuk Manufaktur Chip Berbasis AI: Langkah Besar Menuju Revolusi Semikonduktor Global

alya 01/11/2025

Seoul/Santa Clara, Oktober 2025&nbsp; Dunia teknologi kembali dihebohkan dengan kabar besar dari dua raksasa industri:&hellip;

Google Perkuat Ekonomi AI Asia Tenggara: Misi Besar Bangun Talenta, Pertanian Cerdas, dan Kesehatan Digital di Era Kecerdasan Buatan

alya 01/11/2025

Jakarta, Oktober 2025&nbsp; Raksasa teknologi global Google kembali menunjukkan komitmennya terhadap transformasi digital Asia Tenggara&hellip;

Delta Electronics Akuisisi Noda RF Technologies: Strategi Besar Perkuat Rantai Pasok Daya Semikonduktor Global di Era AI dan Otomasi

alya 01/11/2025

Dalam langkah strategis yang semakin menegaskan posisinya di industri teknologi global, Delta Electronics Inc., perusahaan&hellip;

Menyusun Ulang Angka-Angka AI Asia Tenggara: Investasi Menuju US$110 Miliar, Tapi Apakah Infrastruktur dan Talenta Siap?

alya 01/11/2025

Asia Tenggara tengah berdiri di ambang revolusi digital baru. Dengan pertumbuhan ekonomi yang stabil, populasi&hellip;

Feedback
Feedback
How would you rate your experience?
Do you have any additional comment?
Next
Enter your email if you'd like us to contact you regarding with your feedback.
Back
Submit
Thank you for submitting your feedback!