PHP globaaliset muuttujat - super-globaaliset muuttujat

Super-globaaliset muuttujat otettiin käyttöön PHP 4.1.0:ssä ja ne ovat sisäänrakennettuja muuttujia, jotka ovat aina käytettävissä kaikissa konteksteissa.

PHP globaaliset muuttujat - super-globaaliset muuttujat

PHP:ssä monet ennakkoesitetyt muuttujat ovat 'super-globaaleja', mikä tarkoittaa, että ne ovat käytettävissä koko skriptin toiminnan aikana. Ne voidaan käyttää ilman, että on tarpeen suorittaa global $variable;.

Nämä super-yksilölliset muuttujat ovat:

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

Tämä luku esittelee joitakin super-yksilöllisiä muuttujia ja käsittelee muita super-yksilöllisiä muuttujia myöhemmin.

$GLOBALS — viittaus kaikkiin käytettävissä oleviin muuttujiin globaalissa kontekstissa

$GLOBALS -globaali muuttuja käytetään PHP-skriptin missä tahansa sijainnissa globaalien muuttujien pääsyyn (funktion tai metodin sisällä tai ulkopuolella).

PHP tallentaa kaikki globaaliset muuttujat nimellä $GLOBALS[index] olevaan taulukkoon. Muuttujan nimi on taulukon avain.

Esimerkki näyttää, miten super-yksilöllinen muuttuja $GLOBALS käytetään:

Esimerkki

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

Suorita esimerkki

Yllä olevassa esimerkissä z on $GLOBALS -taulukon muuttuja, joten sitä voidaan käyttää myös funktioiden ulkopuolella.

PHP $_SERVER

$_SERVER -yksilöllinen muuttuja tallentaa tietoja otsikkoriveistä, poluista ja skriptin sijainnista.

Esimerkki näyttää, miten $_SERVER -yksilöllisessä muuttujassa olevia elementtejä käytetään:

Esimerkki

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

Suorita esimerkki

Seuraavassa taulukossa luetellaan tärkeimmät elementit, joita voit käyttää $_SERVER:ssä:

Elementti/koodi Kuvaus
$_SERVER['PHP_SELF'] Palauttaa nykyisen skriptin tiedoston nimen.
$_SERVER['GATEWAY_INTERFACE'] Palauttaa palvelimen käyttämän CGI-standardin version.
$_SERVER['SERVER_ADDR'] Palauttaa nykyisen skriptin suorittavan palvelimen IP-osoitteen.
$_SERVER['SERVER_NAME'] Palauttaa nykyisen skriptin suorittavan palvelimen verkkonimen (esim. www.codew3c.com).
$_SERVER['SERVER_SOFTWARE'] Palauttaa palvelimen tunniste-merkin (esim. Apache/2.2.24).
$_SERVER['SERVER_PROTOCOL'] Palauttaa viestinnän protokollan nimen ja version (esim. 'HTTP/1.0').
$_SERVER['REQUEST_METHOD'] Palauttaa sivun avaukseen käytetyn pyyntömenetelmän (esim. POST).
$_SERVER['REQUEST_TIME'] Palauttaa pyynnön alkamishetken aikaleiman (esim. 1577687494).
$_SERVER['QUERY_STRING'] Palauttaa hakemistoketjun, jos sivu on avattu hakemistoketjun kautta.
$_SERVER['HTTP_ACCEPT'] Palauttaa nykyisen pyynnön kaikki otsikot.
$_SERVER['HTTP_ACCEPT_CHARSET'] Palauttaa nykyisen pyynnön Accept_Charset-otsikon (esim. utf-8, ISO-8859-1).
$_SERVER['HTTP_HOST'] Palauttaa nykyisen pyynnön Host-otsikon.
$_SERVER['HTTP_REFERER'] Palauttaa nykyisen sivun täyden URL-osoitteen (epäluotettava, koska ei kaikki käyttäjäagentit tue sitä).
$_SERVER['HTTPS'] Onko scripti haettu turvallisen HTTP-protokollan kautta.
$_SERVER['REMOTE_ADDR'] Palauttaa nykyisen sivun selataan käyttäjän IP-osoitteen.
$_SERVER['REMOTE_HOST'] Palauttaa nykyisen sivun selataan käyttäjän isäntänimen.
$_SERVER['REMOTE_PORT'] Palauttaa käyttäjän koneella olevan Web-palvelimeen yhdistetyn portin.
$_SERVER['SCRIPT_FILENAME'] Palauttaa nykyisen suoritettavan skriptin absoluuttisen polun。
$_SERVER['SERVER_ADMIN'] Tämä arvo määrittää Apache-palvelimen konfiguraatiotiedoston SERVER_ADMIN-parametrin.
$_SERVER['SERVER_PORT'] Web-palvelimen käytössä oleva portti. Oletusarvo on '80'.
$_SERVER['SERVER_SIGNATURE'] Palauttaa palvelimen version ja virtuaalisen isäntänimen。
$_SERVER['PATH_TRANSLATED'] Peruspolku nykyisen skriptin sijaitsevan tiedostojärjestelmän (ei dokumentin juurihakemistoa) pohjalta.
$_SERVER['SCRIPT_NAME'] Palauttaa nykyisen skriptin polun。
$_SERVER['SCRIPT_URI'] Palauttaa nykyisen sivun URI:n。

PHP $_REQUEST

PHP $_REQUEST käytetään HTML-lomakkeen提交的数据的收集。

Esimerkki näyttää lomakkeen, joka sisältää syöttökentät ja lähetyspainikkeen. Kun käyttäjä napsauttaa lähetyspainiketta lähettääkseen lomakkeen tiedot, lomakkeen tiedot lähetetään <form>-tagin action-ominaisuudessa määritettyyn skriptiin. Tässä esimerkissä me määrittelemme tiedoston itsensä käsittelemään lomakkeen tietoja. Jos tarvitset käyttää muita PHP-tiedostoja käsittelemään lomakkeen tietoja, muuta valitsemasi tiedoston nimeä. Sitten voimme käyttää ylivaltaista muuttujaa $_REQUEST kerätäksemme input-kenttien arvoja:

Esimerkki

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

Suorita esimerkki

PHP $_POST

PHP $_POST käytetään laajasti HTML-lomakkeen提交 method="post" jälkeen lomakkeen tietojen keräämiseen. $_POST käytetään myös usein muuttujien välittämiseen.

Esimerkki näyttää lomakkeen, joka sisältää syöttökentät ja lähetyspainikkeen. Kun käyttäjä napsauttaa lähetyspainiketta lähettääkseen tiedot, lomakkeen tiedot lähetetään <form>-tagin action-ominaisuudessa määritettyyn tiedostoon. Tässä esimerkissä me määrittelemme tiedoston itsensä käsittelemään lomakkeen tietoja. Jos haluat käyttää toista PHP-sivua käsittelemään lomakkeen tietoja, muuta valitsemasi tiedoston nimeä. Sitten voimme käyttää ylivaltaista muuttujaa $_POST kerätäksemme syöttökenttien arvoja:

Esimerkki

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

Suorita esimerkki

PHP $_GET

PHP $_GET voidaan käyttää HTML-lomakkeen (method="get") lähettämän tiedon keräämiseen.

$_GET voi myös kerätä URL:stä lähetettyjä tietoja.

Oletetaan, että meillä on sivu, jossa on parametrisoitu hyperlinkki:

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

Kun käyttäjä napsauttaa linkkiä "Testaa $GET", parametrit "subject" ja "web" lähetetään "test_get.php":aan, ja voit sitten käyttää $_GET:ää saadaksesi nämä arvot "test_get.php":ssä.

Seuraava esimerkki on "test_get.php" -tiedostosta löytyvä koodi:

Esimerkki

<html>
<body>
<?php 
echo "Opit " . $_GET['web'] . " " . $_GET['subject'];
?>
</body>
</html>

Suorita esimerkki

Vinkki:Sinut tulee PHP 表单 Tässä luvussa opit lisää $_POST ja $_GET tietoja.