PHP Superglobal Variables ja Register_Globals
PHP: llä on erityinen muuttuja, jota kutsutaan superglobaliksi. Syy, että nämä muuttujat ovat erityisiä, johtuu siitä, että ne ovat automaattisesti kaikkien PHP-ohjelmien käytettävissä ilman, että ohjelmoija luo tai määrittelee niitä ohjelmassaan. Voit ajatella niitä "sisäänrakennetuina" muuttujina.

Tapa käyttää näitä muuttujia vaihtelee sen mukaan, otetaanko register_globals käyttöön tai pois käytöstä palvelimellasi. Ennen PHP-versiota 4.2 register_globals oli oletusasetuksena käytössä. Tee kuitenkin turvallisuussyistä; tämä asetus on nyt poistettu käytöstä oletuksena (versio 4.2+). Palvelinta ylläpitävien ihmisten on tietysti päätettävä, ohitetaanko oletusasetukset ja otetaanko register_globals käyttöön. Helpoin tapa testata oma palvelin on käyttää phpinfo (). Sinulla on todennäköisesti linkki tälle verkkosivulle verkkosivustosi hallinnollisella alueella. Tältä verkkosivulta löydät Configuration PHP Core -osan, jossa on nämä tiedot.

Kuten edellä mainittiin, pääsyt superlogoihin eri tavoin palvelimen asetuksista riippuen. Uutta palvelimen asennusta varten superlogoleille annettiin uudet nimet. Jos palvelimellasi on edelleen vanha asetus, on parempi aloittaa uusien nimien käyttäminen joka tapauksessa. Jos käytät näitä uusia nimiä, voit olla varma, että ohjelmasi toimivat molemmissa palvelinkonfiguraatioissa. Tämä ei kuitenkaan pidä paikkaansa vanhoja nimiä. Ne toimivat vain vanhan palvelimen kokoonpanon yhteydessä. Seuraavassa taulukossa näkyvät vanhat ja uudet nimet ja kuvaus superlogoista. Huomaa, että näiden superglobaalien nimet ovat isoilla kirjaimilla.

UusiVanhaKuvaus
$ _GET $ HTTP_GET_VARS Tämä superglobal sisältää muuttujat, jotka lähetetään ohjelmalle get-menetelmällä, kuten gery-merkkijono.
$ _POST $ HTTP_POST_VARS Tämä superglobal sisältää muuttujat, jotka lähetetään ohjelmaan post-menetelmällä.
$ _COOKIE $ HTTP_COOKIE_VARS Tämä superglobal sisältää muuttujat, jotka ovat ohjelman käytettävissä evästeestä.
$ _SESSION $ HTTP_SESSION_VARS Tämä superglobal sisältää muuttujat, jotka ohjelma on rekisteröinyt istunnon kautta.
$ _FILES $ HTTP_POST_FILES Tämä superglobal sisältää muuttujat, jotka ovat saatavilla tiedostojen lataamisesta.
$ _ENV $ _HTTP_ENV_VARS Tämä superglobal sisältää muuttujat, jotka ovat saatavissa palvelinympäristöstä.
$ _REQUEST -- Tämä superglobal sisältää muuttujat, jotka lähetetään ohjelmaan minkä tahansa tyyppisellä käyttäjän syötteellä. Tämä on yleisin tai yleisin tyyppi superglobal.
$ _SERVER -- Tämä superglobal sisältää tietoja palvelimesta, kuten tiedostopolkuja.





Video-Ohjeita: web variables($_GET and $_POST) (Saattaa 2024).