Variabel Global pada PHP - Superglobals


Superglobals diperkenalkan di PHP 4.1.0, dan merupakan variabel built-in yang selalu tersedia di semua cakupan.

PHP Global Variables - Superglobals

Beberapa variabel yang telah ditentukan sebelumnya di PHP adalah "superglobals", yang berarti selalu diakses, terlepas dari cakupannya - dan Anda dapat mengaksesnya dari fungsi, kelas atau file apa pun tanpa harus melakukan sesuatu yang istimewa.

Variabel superglobal PHP adalah:

  •     $GLOBALS
  •     $_SERVER
  •     $_REQUEST
  •     $_POST
  •     $_GET
  •     $_FILES
  •     $_ENV
  •     $_COOKIE
  •     $_SESSION

Bab ini akan menjelaskan beberapa superglobals, dan sisanya akan dijelaskan di bab selanjutnya.

PHP $GLOBALS

$GLOBALS adalah variabel super global PHP yang digunakan untuk mengakses variabel global dari manapun dalam skrip PHP(juga dari dalam fungsi atau metode).

PHP menyimpan semua variabel global dalam sebuah array yang disebut $GLOBALS[index]. Indeks memegang nama variabel.

Contoh di bawah ini menunjukkan bagaimana menggunakan variabel super global $GLOBALS:
Contoh
<?php
$x = 75;
$y = 25;

function tambahan(){
    $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}

tambahan();
echo $z;
?>

Pada contoh di atas, karena z adalah variabel yang ada dalam array $GLOBALS, ini juga dapat diakses dari luar fungsi!

PHP $_SERVER

$_SERVER adalah variabel super global PHP yang menyimpan informasi tentang tajuk, lintasan, dan lokasi skrip.

Contoh di bawah ini menunjukkan bagaimana menggunakan beberapa elemen di $_SERVER:
Contoh
<?php
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>

berikut ini elemen terpenting yang bisa masuk ke dalam $_SERVER:

  1. $_SERVER['PHP_SELF'] Mengembalikan nama file dari skrip yang saat ini dijalankan
  2. $_SERVER['GATEWAY_INTERFACE'] Mengembalikan versi Common Gateway Interface(CGI) yang digunakan server
  3. $_SERVER['SERVER_ADDR'] Mengembalikan alamat IP dari server host
  4. $_SERVER['SERVER_NAME'] Mengembalikan nama server host(seperti www.sroov.com)
  5. $_SERVER['SERVER_SOFTWARE'] Mengembalikan string identifikasi server(seperti Apache / 2.2.24)
  6. $_SERVER['SERVER_PROTOCOL'] Mengembalikan nama dan revisi protokol informasi(seperti HTTP / 1.1)
  7. $_SERVER['REQUEST_METHOD'] Mengembalikan metode permintaan yang digunakan untuk mengakses halaman(seperti POST)
  8. $_SERVER['REQUEST_TIME'] Mengembalikan stempel waktu awal permintaan(seperti 1377687496)
  9. $_SERVER['QUERY_STRING'] Mengembalikan string kueri jika halaman diakses melalui string kueri
  10. $_SERVER['HTTP_ACCEPT'] Mengembalikan header Accept dari permintaan saat ini
  11. $_SERVER['HTTP_ACCEPT_CHARSET'] Mengembalikan header Accept_Charset dari permintaan saat ini(seperti utf-8, ISO-8859-1)
  12. $_SERVER['HTTP_HOST'] Mengembalikan header Host dari permintaan saat ini
  13. $_SERVER['HTTP_REFERER'] Mengembalikan URL lengkap dari halaman ini(tidak dapat diandalkan karena tidak semua agen pengguna mendukungnya)
  14. $_SERVER['HTTPS'] Apakah script ditanyakan melalui protokol HTTP yang aman
  15. $_SERVER['REMOTE_ADDR'] Mengembalikan alamat IP dari tempat pengguna melihat halaman ini
  16. $_SERVER['REMOTE_HOST'] Mengembalikan nama Host dari tempat pengguna melihat halaman ini
  17. $_SERVER['REMOTE_PORT'] Mengembalikan port yang digunakan pada mesin pengguna untuk berkomunikasi dengan server web
  18. $_SERVER['SCRIPT_FILENAME'] Mengembalikan nama path absolut dari skrip yang sedang dijalankan
  19. $_SERVER['SERVER_ADMIN'] Mengembalikan nilai yang diberikan ke perintah SERVER_ADMIN di file konfigurasi server web(jika skrip Anda berjalan pada virtual host, itu akan menjadi nilai yang ditentukan untuk host maya itu)(seperti someone@sroov.com )
  20. $_SERVER['SERVER_PORT'] Mengembalikan port pada mesin server yang digunakan oleh server web untuk komunikasi(seperti 80)
  21. $_SERVER['SERVER_SIGNATURE'] Mengembalikan versi server dan nama host virtual yang ditambahkan ke halaman yang dibuat server
  22. $_SERVER['PATH_TRANSLATED'] Mengembalikan path berbasis sistem file ke skrip saat ini
  23. $_SERVER['SCRIPT_NAME'] Mengembalikan jalur skrip saat ini
  24. $_SERVER['SCRIPT_URI'] Mengembalikan URI dari halaman ini
PHP $_REQUEST

PHP $_REQUEST digunakan untuk mengumpulkan data setelah mengirimkan formulir HTML.

Contoh di bawah ini menunjukkan form dengan field masukan dan tombol submit. Saat pengguna mengirimkan data dengan mengeklik "Kirim", data formulir dikirim ke file yang ditentukan dalam atribut tindakan tag <form>. Dalam contoh ini, kami menunjuk ke file ini sendiri untuk memproses data formulir. Jika Anda ingin menggunakan file PHP lain untuk memproses data formulir, ganti dengan nama file pilihan Anda. Kemudian, kita bisa menggunakan variabel super global $_REQUEST untuk mengumpulkan nilai field input:
Contoh
<html>
<body>

<form method = "post" action = "<?php echo $_SERVER['PHP_SELF'];?>">
  Nama: <input type = "text" name = "fname">
  <input type = "submit">
</form>
<?php
if($_SERVER["REQUEST_METHOD"] == "POST"){
    // kumpulkan nilai field input
    $name = $_REQUEST['fname'];
    if(empty($name)){
        echo "Nama kosong";
    } else{
        echo $name;
    }
}
?>

</body>
</html>
PHP $_POST

PHP $_POST banyak digunakan untuk mengumpulkan data form setelah mengirimkan form HTML dengan method = "post". $_POST juga banyak digunakan untuk melewatkan variabel.

Contoh di bawah ini menunjukkan form dengan field masukan dan tombol submit. Saat pengguna mengirimkan data dengan mengeklik "Kirim", data formulir dikirim ke file yang ditentukan dalam atribut tindakan tag <form>. Dalam contoh ini, kita menunjuk ke file itu sendiri untuk memproses data formulir. Jika Anda ingin menggunakan file PHP lain untuk memproses data formulir, ganti dengan nama file pilihan Anda. Kemudian, kita bisa menggunakan variabel super global $_POST untuk mengumpulkan nilai field input:
Contoh
<html>
<body>

<form method = "post" action = "<?php echo $_SERVER['PHP_SELF'];?>">
  Nama: <input type = "text" name = "fname">
  <input type = "submit">
</form>

<?php
if($_SERVER["REQUEST_METHOD"] == "POST"){
    // kumpulkan nilai field input
    $name = $_POST['fname'];
    if(kosong($name)){
        echo "Nama kosong";
    } else{
        echo $name;
    }
}
?>

</body>
</html>
PHP $_GET

PHP $_GET juga bisa digunakan untuk mengumpulkan data form setelah mengirimkan form HTML dengan method = "get".

$_GET juga dapat mengumpulkan data yang dikirim dalam URL.

Asumsikan kita memiliki halaman HTML yang berisi hyperlink dengan parameter:
<html>
<body>

<a href="test_get.php?subject=PHP&web=kodelover.blogspot.com"> Uji $GET </a>

</body>
</html>

Ketika pengguna mengeklik tautan "Uji $GET", parameter "subjek" dan "web" dikirim ke "test_get.php", dan Anda kemudian dapat mengakses nilainya di "test_get.php" dengan $_GET.

Contoh di bawah ini menunjukkan kode di "test_get.php":
Contoh
<html>
<body>

<?php
echo "belajar" $_GET['subject']. "Di". $_GET['web'];
?>

</body>
</html>

http://kodelover.blogspot.co.id/search/label/PHP
Previous
Next Post »
Thanks for your comment