PHP: globalna spremenljivka v funkciji

8. 4. 2019

Spletna stran, ki jo ustvari strežnik, mora biti pravilna. Naloga jezika strežnika je oblikovati stran, vendar je njena vloga sekundarna. PHP koda je vstavljanje v stran, ne pa tudi strani. V idealnem primeru lahko zagotovite ustvarjanje strani na letalu. Spletni vir je zasnovan na ideji, ki je bila realizirana v obliki organiziranega, na nek način informacij. Le v majhnem delu - to so opisi podatkov, ki obdelujejo določene algoritme.

HTML + JavaScript in CSS = Stran

Vse, kar prejme brskalnik, je tok informacij, ki je sistematiziran in organiziran na strogo določen način. Prenos iz strežnika v brskalnik lahko pokličete v tok podatkov, toda ti podatki imajo določen pomen in so rezultat dela ne le programerja.

Rezultat, ki ga ustvari strežnik, vključuje delo oblikovalca, analitika, vodje projekta. To je pomen, to je organizirana informacija na spletnem viru. Napaka v tej niti zaradi katerega koli razloga bo povzročila škodo skupnemu cilju.

Značilnost modernega internetnega programiranja je tišina in tišina iz kakršnega koli nepredvidenega razloga. Napaka lahko brez težav ostane neopažena in povzroči nepričakovane posledice, čeprav je po nalaganju brskalnika prikazan prejeti tok informacij tako, kot so ga želeli videti ustvarjalci.

Brskalnik, DOM in informacije

Pomembno:

  • podatkov, in to niso samo spremenljivke PHP in ne toliko;
  • in to ni samo PHP.

PHP je jezik vstavljanja, vendar je uporaba globalnih podatkov v lokalnih funkcijah pomembna. Pri oceni vloge katerega koli strežniškega jezika je težko dvigniti njegovo vrednost nad mesto, ki ga zaseda, vendar je to pogosto potrebno. Mesto PHP je vstavljanje znotraj strani, tudi v omejevalnem primeru, ko je stran ustvarjena izključno s samim jezikom v celoti. Stran ni nikoli osamljena in homogena:

  • ima HTML;
  • elementi so dodeljeni rokovniki za JavaScript;
  • oznake so opisane preko CSS;
  • na voljo: JavaScript koda, JSON, drugi vstavki.

Vsa ta pestra skupnost bi morala določiti, kaj naj brskalnik razčleni in kako zgraditi drevo DOM, ki določa videz in funkcionalnost strani.

Vstavki PHP: opisi in algoritmi

Obstajata dve bistveno različni zamisli, ki jih PHP izvaja. Prvi vam omogoča, da omogočite / onemogočite bloke besedila HTML, da sodelujejo v izhodnem toku. Drugi je takojšnja koda: opisi spremenljivk, algoritmi in množica lokalnih funkcij, ki potrebujejo globalne podatke.

V vsakem primeru je mogoče uporabiti globalne spremenljivke PHP. V prvem polju spremenljivke tipa uporablja samo. V vstavkih drugega tipa se lahko spremenijo.

Vsaka spremenljivka, opisana v prilogi, se nanaša na globalno področje. Lokalna spremenljivka opisuje njeno funkcijo, objekt ali metodo objekta. Na splošno velja, da je treba vsak predmet zabeležiti kot ločeno datoteko.

Ko pregledujete besedilo HTML, PHP izvrši kodo zaporedoma - splošno pravilo tolmača, ki ga programer ne bi smel spremljati, da bi se izognili nepričakovanim napakam. Pomembno je, da navedete: vsi vložki se obdelujejo zaporedno.

Vstavite primere

V primeru (1) je vstavljen opis samo ene spremenljivke $ cPageName. V primeru (2) na istem mestu (blok "HEAD") je inicializacija množice globalnih spremenljivk PHP iz podatkovnega niza GET in POST $ _REQUEST.

V drugem primeru je koda PHP vstavljena iz datotek: scQS.php in save-visit-to-page.php, prva datoteka naloži in inicializira objektni sistem aplikacije, druga datoteka izvede registracijo obiska te strani.

Obe datoteki ustvarjata tudi globalne spremenljivke razreda. PHP ne sistematizira deklaracije in uporabe spremenljivk. Vse objave upravlja programer.

Ena radikalno drugačna okoliščina.

Globalni nizi podatkov $ _GET, $ _POST, $ _REQUEST, $ _SERVER so vedno na voljo, vendar ne vsebujejo vedno potrebnih podatkov. Na te seje in piškotke lahko računate tudi. Vse to lahko zamislite kot izvirni način razglasitve globalne spremenljivke. PHP sam upravlja s podatki, ki so shranjeni v teh nizih.

Globalne strežniške spremenljivke

Z manipuliranjem vrednosti med prenosom (GET, POST), v piškotkih, na sejah lahko podatke med stranmi ali stranjo samodejno prenesete popolnoma varno: nič se ne izgubi, je preprosto, čeprav je videti nenavadno in nerodno.

Vendar je pomembno razumeti in poznati eno izredno pomembno okoliščino. Globalne spremenljivke PHP in SERVER "v živo" samo enkrat: v času konverzije! Ko se brskalnik odpre ali osveži stran: življenje se začne. Takoj, ko stran preide v brskalnik, se “življenje” ustavi.

Obtok bo milijon, ki pomeni "življenje". Točno tolikokrat bo SERVER omogočil PHP-ju, da ustvari in uporabi vse, kar je programer opisal in natančno po algoritmih tega programerja.

Med »življenjem« ni povezave!

Kardinalni, a učinkoviti triki.

Programer PHP vedno potrebuje globalno spremenljivko in ne le, ko brskalnik obišče spletni vir ali se je obiskovalec odločil osvežiti stran. Programer na splošno lahko želi, da celoten sistem objektov, ki jih je ustvaril, ni obstajal od časa do časa, ampak trajno.

Izdelan je spletni vir. To pomeni, da bi morale vse njegove strani "živeti", če ne večno, potem pa vsaj v nadzorovanem časovnem obdobju. Med obiski obiskovalcev.

Obstaja samo en zanesljiv način za spreminjanje stvari: razglasi globalno spremenljivko PHP v brskalniku. To je nasprotno in lahko škoduje varnostnim vprašanjem, vendar je to kul in zanimiva ideja.

Spremenljivka brskalnika

Kar zadeva varnost, je to skrb programerja. Naloga je preprosta in rešljiva. Kar se tiče absurda, ni. Z uporabo JSON, mehanizma AJAX in lastne domišljije lahko prenesete težišče iz strežnika v brskalnik in ustvarite možnost prikaza podatkov o številu potrebnih globalnih spremenljivk PHP.

Obseg gnezdenja

Vse, kar je razglašeno zunaj teles funkcije, predmeta ali metode predmeta, pripada vsakomur. Če želite uporabiti običajne (globalne) spremenljivke na pravem mestu, morate uporabiti ključno besedo global.

Globalna uporaba

V tem primeru so vse spremenljivke, ki so navedene po globalni ključni besedi, na voljo v konstruktorju in funkcijah objekta scStartView (). Kaj točno nosijo pomen, kako se lahko uporabljajo, samo programer ve. Globalne spremenljivke v funkciji v PHP-ju dobijo samo ime. Programer definira drugega.

Telo funkcije, predmeta ali metode predmeta je treba razumeti tako, da pomeni vse, kar je znotraj "{...}". Curly oklepaji so meje lokalnega obsega. Funkcija, opisana v drugi funkciji, ima svoj obseg. Nobena koda ne more prodreti v lokalni obseg.

Prenos podatkov znotraj kode

Vprašanje - kako narediti globalno spremenljivko PHP, se prevede v času, ko je koda klicana. V nasprotnem primeru PHP ne omejuje programerja. Uporabite lahko piškotke, seje in globalne nizove. Optimal - JSON & AJAX in čreva brskalnika. Zadnja možnost je najboljša, vendar zahteva dobro poznavanje JavaScripta.

Prenos podatkov znotraj kode

V bistvu ni in nikoli ni bilo ločevanja programiranja brskalnika (frontend) in programiranja strežnika (backend). Čeprav s stališča oglaševanja, podobe in načina, da bi kupcu pojasnili, da delo za peni stane kar dva rublja, je resnično smiselno.

Vsak programer PHP mora imeti dobro znanje o tem, kaj je HTML in kako je zgrajen DOM, zato mora biti začetno znanje JavaScripta v vrstnem redu stvari. JavaScript programer in samo - neumnost, čeprav obstaja resnična potreba po zelo ozkih kvalifikacijah. Popolno poznavanje delov odjemalca in strežnika je običajno stanje.

Življenjska doba strani, medtem ko je oblikovana na strežniku, ustvari resnično potrebo po prenosu informacij med stranmi in znotraj iste strani v celotnem času, ko je obiskovalec na spletnem mestu.

Pogosto je pomembno, da podatke upravljate med različnimi (večkratnimi) obiskovalci. Za shranjevanje in prenos (tranzit) podatkov skozi čas je zelo odgovoren in pomemben postopek. Prenos podatkov znotraj kode v času razširi možnosti programiranja.

Najenostavnejši primer rešitve PHP: ustvarjanje globalne spremenljivke je lahko v besedilni datoteki nepomembno. Ni težko. To se naredi ob obisku strani (kot primer). Prebere se, ko se stran odpre (vsi vstavki so vzeti iz datotek). Nič ne preprečuje spreminjanja datotek med obiskom enega obiskovalca, v pričakovanju obiska drugega.

Varnost in varnost podatkov

Vsaka globalna spremenljivka je potencialna grožnja. Kraja spremenljivke PHP je težko, če ni mogoče. Spremenljivko JavaScript lahko skoraj vedno vidite. Če je vse kodirano v brskalniku in na strežniku, se za napadalca ustvari ovira, ki negativno vpliva na razvijalca.

Kodirano besedilo scenarija, kjerkoli že je, za razvijalca - nepotrebne težave. Tudi vse shranjene v besedilnih datotekah ali v podatkovni zbirki niso argument.

Vprašanja varnosti in zaščite

Dobra rešitev je uporaba objektno usmerjenega programiranja, ko se ustvari sistem objektov, ki sam določa spremenljivke, ki so potrebne v določenem času.

Tak sistem objektov obstaja v brskalniku skupaj s stranjo DOM v trenutnem stanju in spremeni njegovo stanje glede na spremembo v DOM. Sledenje dinamike je težje kot pri statiki in izvedba preoblikovanja sistema predmeti javascript V ustrezni različici PHP, to je na strežniku, lahko zagotovite tako integriteto podatkov kot tudi varnostna vprašanja.

Kraj PHP in njene spremenljivke

Oblikovanje strani - glavna naloga PHP. Uporaba sistemov za upravljanje spletnih mest (CMS) omejuje programerja in mu nalaga določen koncept upravljanja globalnih spremenljivk. Vsak CMS je masa lastnih spremenljivk, od katerih 99% ni potrebno ustvariti določenega spletnega mesta.

Uporaba CMS: ogrodja

Strežniški del spletne strani je v svoji čisti obliki baza podatkov in datoteke. Mesto, kjer so shranjeni podatki, ki jih brskalnik »prepozna« kot spletni vir. Pravzaprav mu pri tem pomaga programer, ki nekaj kodira v PHP-ju in podaja nekaj v JavaScriptu. Zanj je priložena postavitev HTML / CSS.

Toda v vsakem primeru je strežnik zmožnost shranjevanja, branja, spreminjanja. V tem kontekstu, če sledite klasični človeški logiki stvari: stranka je vedno prav, potem lahko težišče premaknete v brskalnik in »prenesete« stranki vajeti »vlade«. Dejstvo je, da stranka ne bo prejela ničesar, ampak glede na svoja dejanja lahko načrtujete obnašanje strežnika.

S tem pristopom obisk spletnega vira sproži sejo dela, ustvari začetne vrednosti spremenljivk in ustvarjena stran preleti v brskalnik in začne delo določenega odjemalca. Dejanja te stranke vodijo do sprememb, ki se oddajajo strežniku, ki se ustrezno odziva. Vsebina v brskalniku se ustrezno spremeni. Naslednja pobuda stranke so druge spremembe.

Premikanje težišča s strežnika na odjemalca vam omogoča, da si ogledate spletni vir z druge strani in posvetite več pozornosti procesom oblikovanja vsebine spletne strani od pravega potrošnika.

Fantazije razvijalcev

Časi, ko so bila spletna mesta ustvarjena v skladu s predlogami, se zaupajo v zgodovino. Časi moči sistema upravljanja mesta še vedno potekajo, kar ustvarja realne omejitve tako pri uporabi spremenljivk kot pri ustvarjanju progresivnih algoritmov.

V bistvu je CMS prenos težišča s programerja na kupca. Prvi namesti in konfigurira CMS, drugi pa ga napolni z informacijami in ga uporabi. Pogosto je programer naprošen, da napiše kodo za samodejno razčlenjevanje in zapolnitev podatkovne baze z informacijami, vendar to ni ravno to, kar življenje zahteva.

PHP Nasveti

Prihaja čas dinamičnih spletnih mest. Obstaja resnična potreba po upravljanju podatkov, hitrem odzivanju na grožnje in zagotavljanju prilagodljivega obstoja spletnega vira. Fantazija razvijalca v različici »specialist za dinamične podatke in algoritme« je najprej temeljna izkušnja pri upravljanju spremenljivk in kode znotraj brskalnika in strežnika, nato pa učinkovita in dinamična spletna stran nove generacije idej.