PHP pembolehubah super global

Pembolehubah super global didayakan selepas PHP 4.1.0 Pembolehubah yang disertakan dengan sistem PHP dan tersedia dalam keseluruhan skop skrip.

Pembolehubah super global PHP

Beberapa superglobal dipratakrifkan dalam PHP, yang bermaksud bahawa ia berada dalam skrip Tersedia dalam semua skop. Anda boleh menggunakannya dalam fungsi dan kelas tanpa arahan khas.

Senarai pembolehubah super global PHP:

• $GLOBALS menyimpan semua pembolehubah global dalam skrip semasa, yang KUNCInya ialah nama pembolehubah dan VALUE ialah nilai pembolehubah

• $ _SERVER tatasusunan pembolehubah pelayan web semasa

• $_REQUEST menyimpan semua tatasusunan permintaan dalam borang penyerahan, termasuk segala-galanya dalam $_GET, $_POST, $_COOKIE dan $_SESSION

• $_POST menyimpan data dalam borang yang dihantar melalui kaedah POST

• $_GET menyimpan data dalam borang yang diserahkan oleh kaedah GET

• $_FILES menyimpan data yang dihantar oleh fail yang dimuat naik ke skrip semasa

• $_ENV menyimpan pembolehubah persekitaran Web semasa

• $_COOKIE mendapat atau menetapkan tatasusunan pembolehubah yang disimpan dalam kuki penyemak imbas pengguna

• $_SESSION menyimpan tatasusunan pembolehubah sesi bagi skrip semasa

Dalam bab ini, kami akan menerangkan beberapa pembolehubah super global yang biasa digunakan, dan kami akan memperkenalkan pembolehubah yang tinggal dalam beberapa bab seterusnya.

PHP $GLOBALS

$GLOBALS ialah kumpulan pembolehubah super global PHP yang boleh diakses dalam keseluruhan skop skrip PHP .

$GLOBALS ialah tatasusunan gabungan global yang mengandungi semua pembolehubah. Nama pembolehubah ialah kunci tatasusunan.

Contoh berikut memperkenalkan cara menggunakan pembolehubah super global $GLOBALS:

Contoh

<?php 
$x = 75; 
$y = 25;
 
function addition() 
{ 
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; 
}
 
addition(); 
echo $z; 
?>

Contoh Jalankan»

Dalam contoh di atas, z ialah tatasusunan $GLOBALS Pembolehubah global super dalam , pembolehubah ini juga boleh diakses di luar fungsi.

PHP $_SERVER

$_SERVER ialah fail yang mengandungi maklumat pengepala (header), laluan (path) dan lokasi skrip (lokasi skrip ) dan maklumat lain. Item dalam tatasusunan ini dicipta oleh pelayan web. Tiada jaminan bahawa setiap pelayan akan menawarkan semua item pelayan mungkin mengabaikan beberapa, atau menyediakan item yang tidak disenaraikan di sini.

Contoh berikut menunjukkan cara menggunakan elemen dalam $_SERVER:

Instance

<?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'];
?>

Run Examples»

Jadual berikut menyenaraikan elemen penting dalam semua pembolehubah $_SERVER:


Elemen/kod 🎜>

$_SERVER['PHP_SELF'] Nama fail skrip yang sedang dilaksanakan, berkaitan dengan akar dokumen. Contohnya, menggunakan $_SERVER['PHP_SELF'] dalam skrip di http://example.com/test.php/foo.bar akan menghasilkan / test.php/foo.bar. Pemalar __FILE__ mengandungi laluan penuh dan nama fail fail semasa (iaitu mengandungi). Bermula dari versi PHP 4.3.0, jika PHP berjalan dalam mod baris arahan, pembolehubah ini akan mengandungi nama skrip. Pembolehubah ini tidak tersedia dalam versi sebelumnya.

$_SERVER['GATEWAY_INTERFACE'] Versi spesifikasi CGI yang digunakan oleh pelayan sebagai contoh, "CGI/1.1".

$_SERVER['SERVER_ADDR'] Alamat IP pelayan tempat skrip sedang dijalankan.

$_SERVER['SERVER_NAME'] Nama hos pelayan tempat skrip sedang dijalankan. Jika skrip berjalan pada hos maya, nama ditentukan oleh nilai yang ditetapkan untuk hos maya tersebut. (Seperti:                                                                                                                                                                                                                                                                                       'SERVER_SOFTWARE'] Rentetan pengenalan pelayan, diberikan dalam maklumat pengepala apabila membalas permintaan. (Contohnya: Apache/2.2.24)

$_SERVER['SERVER_PROTOCOL'] Nama dan versi protokol komunikasi apabila meminta halaman. Contohnya, "HTTP/1.0".

$_SERVER['REQUEST_METHOD'] Kaedah permintaan yang digunakan untuk mengakses halaman sebagai contoh, "GET", "HEAD", "POST", "PUT".

$_SERVER['REQUEST_TIME'] Cap masa apabila permintaan bermula. Tersedia sejak PHP 5.1.0. (cth: 1377687496)

$_SERVER['QUERY_STRING'] Rentetan pertanyaan (rentetan pertanyaan), jika ada, melalui mana akses halaman dilakukan.

$_SERVER['HTTP_ACCEPT'] Kandungan item Terima: dalam pengepala permintaan semasa, jika ia wujud.

$_SERVER['HTTP_ACCEPT_CHARSET'] Kandungan item Accept-Charset: dalam pengepala permintaan semasa, jika wujud. Contohnya: "iso-8859-1,*,utf-8".

$_SERVER['HTTP_HOST'] Kandungan Host: item dalam pengepala permintaan semasa, jika ia wujud.

$_SERVER['HTTP_REFERER'] Mengarahkan ejen pengguna ke alamat halaman sebelum halaman semasa (jika ada). Ditentukan oleh tetapan ejen pengguna. Tidak semua ejen pengguna akan menetapkan item ini, dan beberapa juga menyediakan fungsi mengubah suai HTTP_REFERER. Pendek kata, nilainya tidak boleh dipercayai. )

<$> $ _ pelayan ['https'] Jika skrip diakses oleh protokol HTTPS, ia ditetapkan sebagai nilai bukan kosong.

$_SERVER['REMOTE_ADDR'] Alamat IP pengguna yang menyemak imbas halaman semasa.

$_SERVER['REMOTE_HOST'] Nama hos pengguna yang menyemak imbas halaman semasa. Resolusi terbalik DNS tidak bergantung pada REMOTE_ADDR pengguna.

$_SERVER['REMOTE_PORT'] Nombor port yang digunakan oleh mesin pengguna untuk menyambung ke pelayan web.

$_SERVER['SCRIPT_FILENAME'] Laluan mutlak skrip yang sedang dilaksanakan.

$_SERVER['SERVER_ADMIN'] Nilai ini menentukan parameter SERVER_ADMIN dalam fail konfigurasi pelayan Apache. Jika skrip berjalan pada hos maya, nilai ini ialah nilai untuk hos maya tersebut. (cth: seseorang@runoob.com)

$_SERVER['SERVER_PORT'] Port yang digunakan oleh pelayan web. Nilai lalai ialah "80". Jika menggunakan sambungan selamat SSL, nilai ini ialah port HTTP yang ditetapkan oleh pengguna.

$_SERVER['SERVER_SIGNATURE'] Rentetan yang mengandungi versi pelayan dan nama hos maya.

$_SERVER['PATH_TRANSLATED'] Laluan asas sistem fail (bukan direktori akar dokumen) di mana skrip semasa berada. Ini adalah hasil selepas pelayan telah diimejkan daripada laluan maya kepada sebenar.

$_SERVER['SCRIPT_NAME'] Mengandungi laluan skrip semasa. Ini berguna apabila halaman perlu menghala ke dirinya sendiri. Pemalar __FILE__ mengandungi laluan penuh dan nama fail skrip semasa (seperti fail sertakan).

$_SERVER['SCRIPT_URI']                                 URI digunakan untuk menentukan halaman yang hendak diakses. Contohnya "/index.html".


PHP $_REQUEST

PHP $_REQUEST digunakan untuk mengumpul data yang diserahkan oleh borang HTML.

Contoh berikut menunjukkan borang dengan medan input dan butang hantar. Apabila pengguna menyerahkan data borang dengan mengklik butang "Serah", data borang dihantar ke fail skrip yang dinyatakan dalam atribut tindakan teg <form> Dalam contoh ini, kami menentukan fail untuk memproses data borang. Jika anda mahukan fail PHP lain untuk mengendalikan data ini, anda boleh mengubah suai nama fail skrip yang ditentukan. Kemudian, kita boleh menggunakan pembolehubah super global $_REQUEST untuk mengumpul data medan input dalam bentuk:

Instance

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

Run Instance»

$_SERVER[' PHP_SELF '] sering digunakan semasa pembangunan Ia biasanya digunakan untuk merujuk alamat halaman web semasa, dan ia adalah pembolehubah global yang dijana secara automatik oleh sistem.


PHP $_POST

PHP $_POST digunakan secara meluas untuk mengumpul data borang dalam bentuk HTML Nyatakan atribut tag ini: "method="post".

Contoh berikut menunjukkan borang dengan medan input (input) dan butang serah (hantar). Apabila pengguna menyerahkan dengan mengklik "Serah" butang Apabila membentuk data borang, data borang akan dihantar ke fail skrip yang dinyatakan dalam atribut tindakan teg <form> mengendalikan data, anda boleh mengubah suai nama fail skrip yang ditentukan Kemudian, kita boleh menggunakan pembolehubah super global $_POST untuk mengumpulkan data medan input dalam bentuk:

Instance

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

<. 🎜>Jalankan Instance»


PHP $_GET

PHP $_GET juga digunakan secara meluas untuk mengumpul data borang Tentukan atribut ini dalam teg borang HTML: "method="get".

$_GET juga boleh mengumpul data yang dihantar dalam URL.

Andaikan kami mempunyai halaman HTML hiperpautan yang mengandungi parameter:

<html>
<body>
<a href="test_get.php?subject=PHP&web=runoob.com">Test $GET</a>
</body>
</html>

Apabila pengguna mengklik pada pautan "Uji $GET", parameter "subjek" dan "web" akan dihantar ke "test_get. php", Anda boleh menggunakan pembolehubah $_GET dalam fail "test_get.php" untuk mendapatkan data ini

Contoh berikut menunjukkan kod fail "test_get.php":

Contoh

<html>
<body>
<?php 
echo "Study" . $_GET['subject'] . "at" . $_GET['web'];
?>
</body>
</html>
<. 🎜>Contoh Berjalan»


Petua: Jika anda ingin mengetahui lebih lanjut tentang $_POST dan $_GET, sila lawati bab Borang PHP kami
Meneruskan pembelajaran
||
<?php $x = 75; $y = 25; function addition() { $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; } addition(); echo $z; ?>
  • Cadangan kursus
  • Muat turun perisian kursus