
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:
Kenapa hasilnya 3?
Karena lokasi konstanta __LINE__ berada di baris ke-3. Ini bisa kita lihat dengan teks editor.
2. Konstanta __FILE__
Konstanta ini akan berisi alamat lengkap (path) dari file PHP.
Contoh:
<?php
echo “File ini berada di: ” . __FILE__;
?>
Hasilnya:
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:
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:
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:
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:
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:
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:
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:
Baca juga: Membuat Pemrograman Web (PHP) di Linux
Recent Post
-
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
-
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
-
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
-
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
-
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
-
TikTok Didenda Rp 9,8 Triliun Karena Ketahuan Kirim Data Pengguna ke China
-
Amazon Nova Premier Hadir dengan Kapasitas Konteks hingga 1 Juta Token
-
Fortnite Kembali Hadir di App Store, Apple Kalah di Pengadilan
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Tags
Read More
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
titah 08/05/2025 0YouTube selalu berusaha memberikan pengalaman terbaik bagi penggunanya. Untuk itu, mereka kini tengah menguji coba paket Premium Duo, yang memungkinkan dua orang untuk berbagi langganan…
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
titah 08/05/2025 0Teknologi di dunia medis terus berkembang dan membawa banyak perubahan. Salah satu inovasi terbaru yang…
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
titah 08/05/2025 0Google selalu berusaha meningkatkan pengalaman pengguna Android melalui desain yang lebih menarik dan mudah digunakan.…
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
titah 08/05/2025 0Perangkat digital, terutama smartphone, kini menjadi bagian penting dalam kehidupan sehari-hari. Mulai dari komunikasi hingga…
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
titah 08/05/2025 0Mistral AI, sebuah perusahaan asal Prancis, mulai mencuri perhatian dunia dengan kemajuan teknologi kecerdasan buatannya.…
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Popular Tags