PHP istorija/veikimas/panaudojimas
Kas yra PHP?
PHP tai programavimo kalbą, kurią sukūrė Rasmus Lerdorf iš Danijos 1994 metais ir pavadino “Personal Home Page Tools”, bet vėliau išplėtus galimybes buvo pavadinta “PHP Hypertext Preprocessor”.
PHP pritaikymas ir populiarumas
PHP, tai kalba daugiausia skirta kurti internetiniams projektams, todėl ji ir yra tokia populiari. Pagal 2010 metų duomenis, 50-60 procentų pasaulio interneto svetainių yra sukurta būtent su PHP. Turinio valdymo sistemos Wordpress, Joomla, Drupal taipat yra sukurtos su PHP. Tarp kitko, Facebook irgi naudoja PHP, tik jie modifikavo pačią kalbą bei sukūrė savo modifikaciją, kuri naudojama būtent jų projektui. PHP kalbą yra gana paprasta išmokti, iš dalies to priežastis yra tai, kad internete yra labai daug dokumentacijos, forumų, paruoštų nemokamų PHP skriptų ir kitų resursų.
Manau dar verta paminėt ir tai, kad PHP populiarumą lemia pigumas eksploatuoti paruoštas programas. Serveriai pakankamai pigųs, nereikia pirkti VPS serverių ar serverių su specialiais stack'ais, kaip pvz Tomcat ar dar kokiu briedu.
PHP veikimo principai
Esminis PHP parašytų programų (skriptų) skirtumas nuo kitų kalbų yra tai, kad programa veikia ne jūsų kompiuteryje, o taip vadinamame web-serveryje, kur ją gali pasiekti neribotas skaičius vartotojų iš viso pasaulio.
Principas toks:
-
Jūs įrašote naršyklėje adresą: http://www.maze.lt
-
Vyksta kreipimasis į web-serverį, kuris perduoda komandą konkrečiam PHP skriptui vykdyti;
-
PHP skriptas įvykdomas ir dažniausiai grąžina tekstinį rezultatą, kuris perduodamas į naršyklę;
- Jūs naršyklėje matote tą sugeneruotą tekstą.
TETYYS prieš 9 metus
Jūs įrašote naršyklėje adresą: http://www.maze.lt
Vyksta kreipimasis į web-serverį, kuris perduoda komandą konkrečiam PHP skriptui vykdyti;
PHP skriptas įvykdomas ir dažniausiai grąžina tekstinį rezultatą, kuris perduodamas į naršyklę;
Jūs naršyklėje matote tą sugeneruotą tekstą.
taip bet pamirsai kelias detales
visu pirma kai ivedi maze.lt tai narsykle kreipiasi i winsock library kad resolvintu hostname'a i ip adresa, paskui winsock library pereina is usermode i kernelmode kur tam tikri driveriai kreipiasi i tinklo plokste kuri per ethernet laida siuncia duomenis i routeri kuris juos apdoroja ir siuncia i modema kuris konvertuoja etherneto signalus kad jie eitu per vario laida ar sviesolaidi. tada tavo ISP juos siuncia i tam tikrus serverius arba i ju serveri priklausomai nuo DNS serverio tavo kompiuteryje kurie grazina atsakyma atgal per vari/sviesolaidi, modema, routeri, etherneta, tiklo plokste, driverius, winsock library ir narsykle
tada kada narsykle gavo maze.lt ip adresa ji siuncia http protokolo requesta i maze serveri per winsocka, driverius, tinklo plokste, etherneta, routeri, modema, vari/sviesolaidi i tavo ISP, kuris duomenis nukreipia i tam tikra VPS tinkla kuris nukreipia nuomenis i tam tikra VPS serveri kur ir yra maze.lt. tada maze.lt gaves duomenis http protokolu per etherneta, tinklo plokste, driverius, linuxo library, apache/nginx apdoroja http protokola patvirtindamas kad jis yra teisingas. tada, jei serveris naudoja apache, jis siuncia visus http duomenis i mod_php ar kaip anas ten, o jei serveris naudoja nginx, jis komunikuoja per fastcgi protokola su php-fpm kuriam siuncia visus http duomenis. jis apdorojes visus duomenis executina tam tikra php scripta kuris naudoja tam tikra frameworka (maze.lt atveju). gaves http headerius ir/arba html outputa fpm siuncia viska atgal fastcgi protokolu i nginx kuris per linuxo library, driverius, tinklo plokste, etherneta ir t.t. siuncia duomenis i tavo pc. per VPS networkus, ISP ir t.t. tavo pc per vari/sviesolaidi, modema, routeri, etherneta, tinklo plokste, driverius, winsocka gauna http responsa i narsykle kuri patvirtinta ar jis teisingas ir apdorojes atvaizduoja tinklapi
Frixo prieš 9 metus
Na čia jau labai plačiai aprašei. Manau mums tokių dalykų nereikia žinoti.. :D
blahblah prieš 9 metus
@CodeMenas kadangi tu ne programuotojas, tai nemanyčiau, kad gali patarinėti, ką programuotojas turi žinoti ir ko ne.. O kiekvienos srities specialistas apie savo sritį turi žinoti visiškai viska.
Barzdocius prieš 9 metus
@CodeMenas Na vistiek jei šia sritim pradėt dirbti reikia žinoti kaip kas, nes jei kas užklaus ir neatsakysi gėda :) Todėl @TETYYS sužlugdė mano viltis dar kada išmokti bent šiek tiek programuoti :D
blahblah prieš 9 metus
@CodeMenas tai koks tu Web Programutojas, jeigu net neišmanai Web veikimo principo? :D
SkepticalHippo prieš 9 metus
@blahblah daug yra tokių web programuotojų. Čia savamokslių programuotojų kančia. Neturėjimas tokių gilesnių žinių.
Bet šito veikimo principo kurį pasakė @TETYYS nežinojimas daug labai nieko nekeičia mokėjime programuot svetaines. Šitokių dalykų labiau reikia einant dirbti į Google ar kokią kitą didelę ir rimtą kompaniją, kur iš tavęs tikėsis, kad moki viską ;)