Penggunaan fungsi DEFDINE pada PHP

Definisi dan Penggunaan

Fungsi define() digunakan untuk mendefinisikan sebuah konstanta.

Konstanta sangat mirip dengan variabel, kecuali untuk perbedaan berikut:

  • Nilai konstanta tidak dapat diubah setelah ditetapkan
  • Nama konstan tidak membutuhkan tanda dolar ($)
  • Konstanta dapat diakses apa pun cakupannya
  • Nilai konstanta hanya dapat berupa string dan angka

Syntax

define(name,value,case_insensitive)

Nilai Parameter

ParameterDeskripsi
name Required. Menentukan nama konstanta
value Required. Menentukan nilai konstanta.
case_insensitive Optional. Menentukan apakah nama konstanta harus case-insensitive. Nilai yang memungkinkan:

TRUE – Case-insensitive (deprecated in PHP 7.3)
FALSE – Case-sensitive (ini default)

Detail Teknis

Return Value:Mengembalikan TRUE jika sukses atau FALSE jika gagal
PHP Version:4+
Changelog:PHP 7.3: Mendefinisikan konstanta case-sensitive tidak digunakan lagi.
PHP 7: Parameter nilai juga bisa berupa array.
PHP 5: Parameter nilai harus berupa string, integer, float, boolean atau NULL.

Dalam Pemrograman PHP terdapat 2 cara untuk menyimpan sebuah nilai, Anda bisa menggunakan variabel dan konstanta untuk menyimpan nilai. Namun, di Artikel ini hanya akan dibahas tentang Konstanta pada PHP.

Daftar isi
  •  1. Pengertian Konstanta php
  •  2. Dasar Dasar Konstanta php
  •  3. Contoh Konstanta dengan fungsi define()
  •  4. Contoh Konstanta dengan keyword const
  •  5. Perbedaan define dan const
  •  6. Konstanta Bawaan(Predefined Constant)

1. Pengertian Konstanta php

Untuk menyimpan sebuah nilai yang bisa dirubah sewaktu-waktu, Anda bisa menggunakan variabel sebagai wadah untuk menampung nilai, Lalu apa hubungannya dengan Konstanta.

Konstanta bisa dikatakan adalah jenis variabel lain yang digunakan untuk menyimpan nilai, nilai yang disimpan oleh konstanta bersifat TETAP(tidak dapat dirubah).

Artinya, fungsi dari konstanta sama dengan variabel yaitu untuk menyimpan nilai. Karena sifat nilai yang dimiliki konstanta adalah TETAP, konstanta sering digunakan untuk menyimpan nilai penting, misalnya konfigurasi database(nama db, pass, dsb).

2. Dasar Dasar Konstanta php

Sebelum lebih mendalam untuk memahami tentang Konstanta pada PHP, Ada baiknya jika Anda memahami dasar-dasar atau aturan untuk Konstanta seperti aturan nama konstanta, sifat konstanta, dsb.

2.1  Membuat Konstanta di php

Ada 2 cara untuk bisa membuat Konstanta dalam lingkup PHP, Pertama Anda bisa mengunakan fungsi define(), yang kedua Anda bisa menggunakan keyword const.

Ke-2 cara diatas memang berbeda dengan cara membuat variabel php, dimana pada variabel Anda bisa menggunakan tanda dollar($) untuk membuat nama variabel.

2.2  Case Sensitive

Konstanta pada PHP bersifat Case Sensitive. Artinya penulisan nama konstanta menggunakan huruf kecil dianggap berbeda dengan penulisan menggunakan huruf besar, walaupun sama misal(nama, NAMA).

Namun jika Anda menggunakan fungsi define(), anda bisa menghilangkan sifat Case Sensitive untuk nama konstanta, sehingga akan bersifat case_insensitive.

Untuk mengaktifkan mode Case_insensitive pada Konstanta php, Anda bisa menambahkan kata TRUE, misalnya seperti ini 'define('NAMA','Mafazi Rahman',true)'.

2.3  Aturan Penulisan

Penulisan nama untuk Konstanta, sebaiknya harus diawali dengan karekter berupa huruf atau tanda underscore(_), misal: _NAMA atau NAMA.

Lebih baik lagi jika semua karakter untuk nama konstanta menggunakan huruf atau underscore(_). Hindari penggunaan beberapa karakter khusus seperti: @, $, angka(1,2,...), operator(-,+,!,=).

Saya sudah melakukan percobaan kecil pada php versi 7, yaitu membuat nama konstanta dengan karakter-karakter khusus seperti yang sudah disebutkan diatas.

Ternyata, penggunaan karakter khusus bisa dilakukan, Tetapi harus menggunakan fungsi define() dan memanggilnya dengan fungsi constant().

Dengan menggunakan fungsi define() dan constant() yang saling berkaitan, Anda bisa juga menggunakan nama-nama keyword seperti(echo,var,dll) untuk penamaan Konstanta.

2.4  Aturan Lainnya

Mulai dari PHP versi 7, Anda bisa menggunakan fungsi array() sebagai nilai untuk Konstanta, misal define('DATA',array('buah','sayur'));.

Artinya, aturan tipe data scalar seperti(boolean, string, int, float) sebagai nilai untuk konstanta sudah tidak berlaku lagi mulai di php versi 7.

3. Contoh Konstanta dengan fungsi define()

Kata define kalau diartikan adalah menetapkan atau mendefinisikan. Jadi, fungsi define() digunakan untuk menetapkan suatu nilai yang bersifat tetap pada sebuah nama, sehingga nama tersebut disebut Konstanta. berikut contoh konstanta dengan define().


    // Membuat Konstanta dengan define()
    define('DATA', array('Kliwon', 'Legi', 'Pahing', 'Pon', 'Wage'));
    
    echo "
";
        echo "5 Nama Weton dalam Jawa - ";
        print_r(DATA);
    echo "
"
; ?>

dari contoh kode diatas, berikut adalah tampilan output dari kode diatas pada halaman web.

Gambar 3

4. Contoh Konstanta dengan keyword const

Apa itu const?. const adalah salah satu keyword php yang bisa digunakan untuk membuat konstanta dalam PHP. Artinya, const bisa juga digunakan untuk menetapkan nilai untuk Konstanta. berikut contoh kode php dengan keyword const.


    // Membuat Konstanta dengan keyword const
    const DATA = array('Konstanta', 'dengan', 'Keyword', 'const');
    
    echo "
";
        echo "Membuat Konstanta dengan Keyword const - ";
        print_r(DATA);
    echo "
"
; // contoh kode ini tidak bekerja di php versi 5.6 kebawah ?>

saya menulis dan mempraktekan contoh kode diatas dengan php versi 7.3.2, dan berikut tampilan hasil dari kode diatas pada halaman web.

Gambar 4

5. Perbedaan define dan const

Perbedaan mendasar antara fungsi define() dan keyword const adalah, fungsi define() akan mendefinisikan Konstanta pada saat run time, sedangkan keyword const mendefinisikan konstanta pada saat kompilasi. berikut tabel perbedaan define dan const.

Nodefine()const
1 bisa mode case insensitive tidak bisa mode case insensitive
2 bisa mendefinisikan konstanta dalam kondisional tidak bisa mendefinisikan konstanta dalam kondisional
3 bisa bernilai ekspresi seperti penjumlahan, misal define('A', 5 + 3); bisa bernilai ekspresi mulai php versi 5.6

6. Konstanta Bawaan(Predefined Constant)

Bahasa PHP telah menyediakan beberapa Konstanta bawaan(Predefined Constant) yang tidak bisa Anda definisikan, dan berikut tabel berisi Konstanta yang sudah didefinisikan oleh PHP.

NoKonstantaDeskripsi
1 PHP_INT_MAX menampilkan bilangan bulat(int) terbesar sesuai versi php yang digunakan, misal int(2147483647).
2 PHP_INT_MIN menampilkan bilangan bulat(int) terkecil sesuai versi php yang digunakan, misal int(-2147483648).
3 PHP_VERSION menampilkan versi php secara keseluruhan, misal versi 7.3.2
4 PHP_RELEASE_VERSION menampilkan versi rilis, misal versi 2 dari(7.3.2)
5 PHP_MINOR_VERSION menampilkan versi minor, misal versi 3 dari(7.3.2)
6 __FILE__ untuk mendapatkan lokasi file secara full path, misal hasilnya adalah('https://www.gotutorid.com/index.php')

Tabel diatas hanya berisi beberapa Konstanta yang umum dgunakan, Untuk selengkapnya bisa Anda cek di situs ini "php.net". Situs tersebut berisi beberapa konstanta seperti PHP_PREFIX, PHP_BINDIR, E_ERROR, E_WARNING, dan lain sebagainya.