Variabel super global diaktifkan setelah PHP 4.1.0. Variabel tersebut adalah variabel yang disertakan dengan sistem PHP dan tersedia di seluruh cakupan skrip.
Beberapa superglobal telah ditentukan sebelumnya di PHP, yang berarti mereka tersedia di seluruh cakupan skrip. Anda dapat menggunakannya dalam fungsi dan kelas tanpa instruksi khusus.
Daftar variabel super global PHP:
$GLOBAL
$_SERVER
$_PERMINTAAN
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESI
Dalam bab ini kami akan menjelaskan beberapa variabel super global yang umum digunakan, dan kami akan memperkenalkan variabel lainnya di beberapa bab berikutnya.
$GLOBALS adalah grup variabel super global di PHP yang dapat diakses di seluruh cakupan skrip PHP.
$GLOBALS adalah array gabungan global yang berisi semua variabel. Nama variabel adalah kunci dari array.
Contoh berikut menunjukkan cara menggunakan variabel super global $GLOBALS:
<?php $x = 75 ; $ y = 25 ; tambahan ( ) { $GLOBALS [ ' z ' ] = $GLOBALS [ ' x ' ] + $GLOBALS [ ' y ' ] } ; tambahan ( ) ; $ z ;
Dalam contoh di atas, z adalah variabel super global dalam array $GLOBALS, yang juga dapat diakses di luar fungsi.
$_SERVER adalah array yang berisi informasi seperti header, path, dan lokasi skrip. Item dalam array ini dibuat oleh server web. Tidak ada jaminan bahwa setiap server akan menawarkan semua item; server mungkin mengabaikan beberapa, atau menyajikan item yang tidak tercantum di sini.
Contoh berikut menunjukkan cara menggunakan elemen di $_SERVER:
<?php gema $ _SERVER [ ' PHP_SELF ' ] ; " <br> " ; $ _SERVER [ ' SERVER_NAME ' ] ; " <br> " ; $ _SERVER [ ' HTTP_HOST ' ] ; " <br> " ; $ _SERVER [ ' HTTP_REFERER ' ] ; " <br> " ; $ _SERVER [ ' HTTP_USER_AGENT ' ] ; " <br> " ; $_SERVER [ ' SCRIPT_NAME ' ] ? >
Tabel berikut mencantumkan elemen penting dalam semua variabel $_SERVER:
elemen/kode | menggambarkan |
---|---|
$_SERVER['PHP_SELF'] | Nama file skrip yang sedang dijalankan, terkait dengan root dokumen. Misalnya, menggunakan $_SERVER['PHP_SELF'] dalam skrip di http://example.com/test.php/foo.bar akan menghasilkan /test.php/foo.bar. Konstanta __FILE__ berisi path lengkap dan nama file dari file saat ini (yaitu berisi). Dimulai dengan PHP versi 4.3.0, variabel ini akan berisi nama skrip jika PHP dijalankan dalam mode baris perintah. Variabel ini tidak tersedia di versi sebelumnya. |
$_SERVER['GATEWAY_INTERFACE'] | Versi spesifikasi CGI yang digunakan oleh server; misalnya, "CGI/1.1". |
$_SERVER['SERVER_ADDR'] | Alamat IP server tempat skrip sedang berjalan. |
$_SERVER['SERVER_NAME'] | Nama host server tempat skrip sedang berjalan. Jika skrip dijalankan pada host virtual, namanya ditentukan oleh nilai yang ditetapkan untuk host virtual tersebut. (misalnya: www.codercto.com) |
$_SERVER['SERVER_SOFTWARE'] | String identifikasi server, diberikan dalam informasi header saat merespons permintaan. (misalnya: Apache/2.2.24) |
$_SERVER['SERVER_PROTOCOL'] | Nama dan versi protokol komunikasi yang digunakan saat meminta halaman. Misalnya, "HTTP/1.0". |
$_SERVER['REQUEST_METHOD'] | Metode permintaan yang digunakan untuk mengakses halaman; misalnya, "GET", "HEAD", "POST", "PUT". |
$_SERVER['REQUEST_TIME'] | Stempel waktu saat permintaan dimulai. Tersedia sejak PHP 5.1.0. (misalnya: 1377687496) |
$_SERVER['QUERY_STRING'] | string kueri (string kueri), jika ada, yang melaluinya akses halaman dilakukan. |
$_SERVER['HTTP_ACCEPT'] | Isi item Terima: di header permintaan saat ini, jika ada. |
$_SERVER['HTTP_ACCEPT_CHARSET'] | Isi item Accept-Charset: di header permintaan saat ini, jika ada. Misalnya: "iso-8859-1,*,utf-8". |
$_SERVER['HTTP_HOST'] | Isi bidang Host: di header permintaan saat ini, jika ada. |
$_SERVER['HTTP_REFERER'] | Mengarahkan agen pengguna ke alamat halaman sebelum halaman saat ini, jika ada. Ditentukan oleh pengaturan agen pengguna. Tidak semua agen pengguna akan menyetel item ini, dan beberapa juga menyediakan fungsi memodifikasi HTTP_REFERER. Singkatnya, nilainya tidak dapat dipercaya. ) |
$_SERVER['HTTPS'] | Setel ke nilai tidak kosong jika skrip diakses melalui protokol HTTPS. |
$_SERVER['REMOTE_ADDR'] | Alamat IP pengguna yang melihat halaman saat ini. |
$_SERVER['REMOTE_HOST'] | Nama host pengguna yang menjelajahi halaman saat ini. Resolusi balik DNS tidak bergantung pada REMOTE_ADDR pengguna. |
$_SERVER['REMOTE_PORT'] | Nomor port yang digunakan pada mesin pengguna untuk terhubung ke server web. |
$_SERVER['SCRIPT_FILENAME'] | Jalur absolut dari skrip yang sedang dijalankan. |
$_SERVER['SERVER_ADMIN'] | Nilai ini menentukan parameter SERVER_ADMIN di file konfigurasi server Apache. Jika skrip dijalankan pada host virtual, nilai ini adalah nilai host virtual tersebut. (misalnya: [email protected]) |
$_SERVER['SERVER_PORT'] | Port yang digunakan oleh server web. Nilai defaultnya adalah "80". Jika menggunakan koneksi aman SSL, nilai ini adalah port HTTP yang ditetapkan oleh pengguna. |
$_SERVER['SERVER_SIGNATURE'] | Sebuah string yang berisi versi server dan nama host virtual. |
$_SERVER['PATH_TRANSLATED'] | Jalur dasar sistem file (bukan akar dokumen) tempat skrip saat ini berada. Ini adalah hasil setelah server dicitrakan dari jalur virtual ke jalur nyata. |
$_SERVER['SCRIPT_NAME'] | Berisi jalur ke skrip saat ini. Ini berguna ketika halaman perlu menunjuk ke halaman itu sendiri. Konstanta __FILE__ berisi path lengkap dan nama file dari skrip saat ini (seperti file yang disertakan). |
$_SERVER['SCRIPT_URI'] | URI digunakan untuk menentukan halaman yang akan diakses. Misalnya "/index.html". |
PHP $_REQUEST digunakan untuk mengumpulkan data yang dikirimkan oleh formulir HTML.
Contoh berikut memperlihatkan formulir dengan kolom input dan tombol kirim. Ketika pengguna mengirimkan data formulir dengan mengklik tombol "Kirim", data formulir akan dikirim ke file skrip yang ditentukan dalam atribut tindakan pada tag <form>. Dalam contoh ini, kami menentukan file untuk menangani data formulir. Jika Anda ingin file PHP lain menangani data ini, Anda dapat mengubah nama file skrip yang ditentukan. Kemudian, kita dapat menggunakan variabel super global $_REQUEST untuk mengumpulkan data kolom masukan dalam bentuk:
<html><body><form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">Nama: <input type="text" name="fname"><tipe input ="kirim"></form><?php $nama = $_REQUEST['fname']; echo $nama;
PHP $_POST banyak digunakan untuk mengumpulkan data formulir. Tentukan atribut ini dalam tag formulir HTML: "method="post".
Contoh berikut memperlihatkan formulir dengan kolom input dan tombol kirim. Ketika pengguna mengirimkan data formulir dengan mengklik tombol "Kirim", data formulir akan dikirim ke file skrip yang ditentukan dalam atribut tindakan pada tag <form>. Dalam contoh ini, kami menentukan file untuk menangani data formulir. Jika Anda ingin file PHP lain menangani data ini, Anda dapat mengubah nama file skrip yang ditentukan. Kemudian, kita dapat menggunakan variabel super global $_POST untuk mengumpulkan data kolom masukan dalam bentuk:
<html><body><form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">Nama: <input type="text" name="fname"><tipe input ="kirim"></form><?php $nama = $_POST['fname']; echo $nama;
PHP $_GET juga banyak digunakan untuk mengumpulkan data formulir. Tentukan atribut ini dalam tag formulir HTML: "method="get".
$_GET juga dapat mengumpulkan data yang dikirim dalam URL.
Asumsikan kita memiliki halaman HTML hyperlink yang berisi parameter:
<html><body><a href="test_get.php?subject=PHP&web=codercto.com">Uji $GET</a></body></html>
Ketika pengguna mengklik link "Test $GET", parameter "subjek" dan "web" akan dikirim ke "test_get.php". Anda dapat menggunakan variabel $_GET di file "test_get.php" untuk mendapatkannya data.
Contoh berikut menunjukkan kode file "test_get.php":
<html><body><?php echo "Belajar " $_GET['subjek'] " di " $_GET['web'];?></body></html>
Tip: Jika Anda ingin mempelajari lebih lanjut tentang $_POST dan $_GET, kunjungi bab Formulir PHP kami.