Plaanid puhkusele minna? Võta endale majutus AirBnb kaudu ja saad 37€ kontoraha Tee konto Sulge
Facebook Like

Programmeerimine PHP (0)

1 Hindamata
Punktid
 
Säutsu twitteris

 
 
 
 
 

 
 
 
 

Programmeerimine keeles PHP 
 
 
 

Andrei Porõvkin 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Tartu Ülikool (2009) 
 
 
1
1.1 Üldinfo
Alguses oli interneti lehed omavahel seotud staatiliste html dokumentide süsteemina, aga selleks, et mingis dokumendis muutusi teha
oli vaja lehti failisüsteemis käsitsi muuta. Kahjuks selline staatiline mudel ei jõua kiirelt muutuva kaasaegse maailma progressile järgi.
Seega võeti kasutusele dünaamiline mudel. Dünaamilise mudeli korral ei hoita serveris staatilisi html lehte vaid neid genereeritakse
selleks spetsiaalselt välja töötatud programmidega, mis  serveril  töötavad.
Antud kursuse jooksul tutvume  klient - server  arhitektuuriga, installeerime enda  arvutisse   veebiserveri  ja php interpretaatori ning saame
baasteadmisi serveripoolsest keelest PHP. Kursuse teemad on pühendatud ainult PHP keelele (väljarvatud seitsmes teema), aga see ei
tähenda, et sellest  piisab  suure ja eduka veebilehe loomiseks. Mahuka infosüsteemi ei saa ette kujutada ilma andmebaasideta,  cache -
süsteemideta, mallimootoriteta, jne.
See  baaskursus  on mõeldud eelkõige selleks, et õpilasel tekiks huvi PHP vastu ja ta hakkaks ise edaspidi rohkem õppima ja katsetama.
Kursuse viimastes peatükkides  vaatleme  ka  MySQL  admebaasiga ühendust ja PHP programmide turvalisust.
Veebiserver
Veebiserveriks nimetatakse:
1. Arvutiprogrammi mis saab üle interneti või kohtvõrgu veebikliendilt ( brauser  ehk  veebilehitseja ) HTTP päringuid ja  saadab  tagasi
HTTP vastuse, sisaldades peamiselt veebilehti ja faile, mis on veebilehega seotud (pildid, javascriptid,  flash -objektid jne.).
2. Arvuti, kus  jookseb  eelpool punktis defineeritud  arvutiprogramm .
Veebiserveri- ja kliendivaheline suhtlus näeb välja järgmiselt:
Antud kursuse jooksul töötame  Apache  veebiserveriga, sest see on lihtne, töökindel ja tasuta veebiserver ning lisaks tänapäeval ka
kõige  populaarsem  veebiserver maailmas. Apache esimene  versioon  sai valmis aastal 1995. Tänaseks kasutab Apache veebiserverit
umbes 50% kõigist veebisaitidest ja veebiserver on kättesaadav nii  LinuxWindows  ja Mac opsüsteemidele.  Tarkvara  lähtekood on
avalik, seetõttu on Apache'i jaoks olemas palju teiste arendajate poolt loodud lisateeke.
Tootja
Nimetus
Saitide arv
Protsent
Apache
Apache
83 206 564
50.22%
Microsoft
IIS
58 540 275
35.33%
Google
GWS
10 075 991
6.08%
Netcraft veebiserverite uuring. Aprill 2008 (värskemad uuringu tulemused - 2009 a.)
PHP keel
PHP on serveripoolne skriptikeel, mis võimaldab genereerida dünaamilisi veebilehti. Selle nimi pärineb kõige  esimesest  versioonist, mida
nimetati "Personal Home Page Tools". Täna nimetatakse seda kui "PHP: Hypertext Preprocessor" (hüperteksti-eeltöötleja). PHP skripti
sisaldavale HTML lehele  omistatakse  tavaliselt  laiend  .php. PHP on tasuta tarkvara ja seda levitatakse  Open  Source litsentsi all avaliku
lähtekoodina. PHP's on võimalik luua ka command-line tarkvara ning visuaalse kasutajaliidesega tarkvara, mis on aga  vastuolus  selle
programmeerimiskeele definitsiooniga. Programmeerimiskeele ajalugu algas 1994. aastast, kui Rasmus Lerdorf tegi väga lihtsa
programmi, mis  mõistis  spetsiaalseid makrosid. Aja jooksul programmi modifitseeriti, laiendati, integreeriti andmebaaside ja uute
tehnoloogiate  toega  ning lisati objekt-orienteeritud  kontseptsiooni  jne. Tulemuseks on PHP viies versioon.
Kui vaatame programmeerimiskeelte populaarsust, siis näeme, et PHP on praegusel hetkel kolmandal kohal (eelmisel aastal aga
viiendal). Arvestada tuleks ka sellega, et PHP on põhimõtteliselt serveripoolne skriptikeel.  Java , C, C++ ja  Visual   Basic  – neid
kasutatakse rohkem tarkvara loomiseks aga see ei tähenda seda, et neid ei või kautatada ka veebiinfosüsteemide loomisel.
Koht
Programmeerimiskeel
Reiting
1
Java
18.718%
2
C
16.891%
3
PHP
10.390%
4
C++
9.911%
5
(Visual) Basic
8.729%
6
C#
4.433%
7
Perl
3.776%
TIOBE Programming Community Index. Oktoober 2009 (vaata lähemalt)
Koht
Programmeerimiskeel
Reiting
1
Java
20.949%
2
C
15.565%
3
C++
10.954%
4
(Visual) Basic
9.811%
5
PHP
8.612%
6
Python
4.565%
7
Perl
4.419%
TIOBE Programming Community Index. Oktoober 2008
PHP tööprintsiip
Kõigepealt  moodustab kliendi brauser html päringu ja saadab selle vastavale  aadressile  (näiteks  http://www.site.ee/index.php ). Sellel
aadressil asuv server võtab vastu html päringu, vaatab, et temalt nõutakse .php laiendiga faili (antud juhul index.php) ja veebiserver
käivitab PHP parseri, mis loob sellest .php  failist  baitkoodi. Seejärel interpreteerib  Zend   Engine  baitkoodi ja  tagastab  veebiserverile html
koodi, mis  saadetakse  veebiserveri poolt omakorda kliendi brauserile http vastusena.
PHP's tehtud
Facebook  -  http://www.facebook.co m
Tuntud sotsiaalvõrk (rohkem kui 90.000.000 aktiivseid kasutajaid)
Flickr  –  http://www.flickr.co m
Online piltide  haldur  (rohkem kui 4.000.000.000 päringuid päevas)
Digg  –  http://digg.com/
Informatsiooni vahetamise  portaal  (rohkem kui 26.000.000 külastajaid kuus)
Wikipedia –  http://www.wikipedia.org/
Veebipõhine entsüklopeedia (rohkem kui 251.000.000 külastajaid kuus)
Lisalugemist
Veebiserveritest (www) - inglise keeles
Apache home page (www) - inglise keeles
Apache põhjalik kasutusjuhend (www) - eesti keeles
PHP  programmeerija  piibel (www) - inglise keeles
Video
Programmeerimiskeeled (3:08) (www) - inglise keeles
Serveripoolsed skriptikeeled (6:50) (www) - inglise keeles
 
1.2 Installeerimine
Klient-server arhitektuur, millest oli jutt peatükkis 1.1 nõuab vähemalt 3 elementi: kliendi arvutit, võrguühendust ning veebiserveri ja
muu vajaliku tarkvaraga serveri arvutit. Arendamise etapil piisab tihti ainult ühest lokaalarvutist, millele on installeeritud brauser
(klient), veebiserver (server) ja php interpretaator – selle arhitektuuriga pole vaja internetiühendust ja kogu töö võib teha oma
koduarvuti taga.
Loomulikult võib installeerida kõik komponendid eraldi, aga nende ühendamine ehk konfigureerimine võtab rohkem aega ja nõuab
rohkem kogemust ja teadmisi. Seega kursuse ülesannete lahendamiseks kasutame distributiivide kogumikku EasyPHP, mis sisaldab
endas järgmisi komponente: Apache, PHP, MySQL ja  PhpMyAdmin  (visuaalne veebipõhine klient MySQL andmebaasile). EasyPHP on
olemas ainult Windows operatsioonisüsteemi jaoks. Kui teie arvutis on Linux, MacOS või  Solaris  süsteem siis võib olla juba vaikimisi
Apache veebiserver ja php installeeritud. Kui ei ole siis võite proovida installeerida XAMPP kogumikku. Kui on piisavalt vaba aega ja
sihikindlust võib proovida Apache (download) ja PHP (download) eraldi iseseisvalt installeerida ja konfigureerida.
PHP programmide kirjutamiseks on vaja tekstitoimetajat. Tekstitoimetajate valik on puhtalt maitse asi, aga oleks mugavam, kui selles
on süntaksi  värvimise  tugi olemas - siis on lihtsam koodist aru saada ja selles orienteeruda. Mina soovitaks kasutada Notepad++, see on
päris võimekas  toimetaja  ning seda saab endale tasuta.
EasyPHP (EasyPHP-2.0b1) installeerimine Windows opsüsteemil
Järgmine kasutusjuhend on kirjutatud EasyPHP-2.0b1 installeeriminse jaoks (aasta 2008). Praegune versioon, mida soovitan kasutada
on EasyPHP-5.3.0. Selle paigaldus ei erine eelmistest versioonidest. Tegelikult võib vabalt kasutada ka EasyPHP-2.0b1 kuna selle
kursuse raames  versioonide  erinevus pole oluline.
Lae alla EasyPHP installeerimis fail: EasyPHP-2.0b1-setup.exe või EasyPHP-5.3.0-setup.exe
või siis otse sourceforge lehelt: EasyPHP
Juhul kui masinas on  Skype  käivitatud - lülita see installeerimise ajaks välja.
Käivita allalaetud EasyPHP-xxx-setup.exe fail.
Järgige  samme  1-8:
samm 1
samm 2
samm 3
samm 4
samm 5
samm 6
samm 7
samm 8
EasyPHP  käivitamine
Kui installeerimine on lõppenud peab taskbaris ilmuma EasyPHP  ikoon .
Klikkige sellel ikoonil kaks korda, siis ilmub  ekraanile  EasyPHP kontrollpaneel:
Juhul kui teie arvutis on installeeritud Skype, siis võib juhtuda, et Apache veebiserveri käivitamisel tekib järgmine  veateadeApache2
port (80) is used by "skNotifyForm" (Skype.exe)!
. Selle põhjuseks on see, et Skype reserveerib endale pordi 80 ja Apache
vaikimisi port on alati 80 ning tekib konflikt. Et probleemi lahendada tuleb Skype välja lülitada, käivitada Apache ja seejärel Skype.
Kui Apache teie  masinal  käib,  avage  brauser ja  pange  aadressiks  http://127.0.0.1/  või  http://localhost/ . Nende  aadresside
tähendus on " lokaalne  arvuti" (ehk 127.0.0.1 ja localhost on alati arvuti enda aadressiks).
Peab ilmuma järgmine  veebileht :
Nüüd kui veebiserver (Apache), PHP ja MySQL andmebaasi server ning tekstitoimetaja on teie arvutis olemas ja töötavad, võime jätkata
esimese PHP programmiga.
Lisalugemist
Localhost (www) - inglise keeles
Scribd
Install Apache 2.2.11 on Windows (www) - inglise keeles
 
1.3 Esimene programm
Hello  world!
Leidke oma arvutis EasyPHP kaust ja selles omakorda kaust www - see on meie Apache veebiserveri juurkataloog ehk DocumentRoot.
Looge selles kaustas fail nimega hello_world.php. Avage see fail oma teksti redaktoris ja kirjutage sinna järgmised koodi read:
hello_world.php
    
    
    
Näide 1.3.1
Salvestage fail ja käivitage brauser ning aadressiks kirjutage:  http://localhost/hello_world.php, tulemusena peab ekraanile ilmuma
järgmine väljund:
Juhul kui näide käivitamine ebaõnnestus, kontrollige kas Apache veebiserver käib ja hello_world.php fail on Apache veebiserveri
juurkataloogis olemas (www kaust).
PHP märgendid
Uurime näide 1.3.1 koodi lähemalt. Esimene asi, mida tuleb meelde jätta on see, kuidas PHP programmi koodi sisestatakse HTML koodi.
Selleks kasutatakse PHP märgendeid ja nende vahel  kirjutatakse  juba PHP kood:
1. 
2. 
3.  ... 
4. 

Tekst nende vahel interpreteeritakse PHP koodina. Kõike, mis nende sümbolite vahele ei jää, loetakse HTML koodiks ja faili täitmisel
väljastatakse  selliselt  nagu on. Kaks esimest  varianti  on kõige rohkem levinud stiil ja peamiselt kasutatakse selliseid märgendeid (selle
kursuse jooksul kasutame ainult esimest varianti).
Kommentaarid
Näide esimesel  real  asub kommentaar Kirjuta valjundisse "Hello, World!". Kommentaare kasutatakse selleks, et teised inimesed
saaksid koodist aru (eriti vajavad kommenteerimist teie poolt välja mõeldud algoritmid ja keeruline  loogika ). Mõnikord juhtub ka nii, et
2-3 kuu pärast ei oska ka koodi autor seletada kuidas tema programm töötab ja temal läheb suhteliselt palju aega selleks, et seda
meelde tuletada. Aga kui kommentaarid on olemas piisab selleks ~5 minutist. Kommentaarid peavad kirjeldama loodava koodi
eesmärke, kasutatud muutujaid, funktsioone ja algoritme. PHP parser ei loe teksti, mis asub kommentaaride vahele. Ta lihtsalt
ignoreerib seda. PHP programmeerimiskeeles on 2 tüüpi kommentaare:
1. / voi # - üherealiste märkuste jaoks
2. /* ... */ - mitmerealised kommentaarid

comments.php

Näide 1.3.2
Eraldajad
PHP  programmid  on põhimõtteliselt käskude kogumid. Käskude eraldamiseks kasutatakse programmeerimiskeeltes spetsiaalseid
sümboleid - eraldajaid. PHP's seda tehakse semikooloniga:
separators.php

Näide 1.3.3
Echo
Järgmine on sõna echo. See on keelekonstruktsioon, mida kasutatakse sõnede kirjutamiseks väljundisse (meie juhul html faili).  Sõned
peavad olema kas jutumärkides (" ") või ülakomades (' '). Kui sõne on jutumärkides, siis esimene asi mis PHP parser selliste sõnedega
teeb - püüab leida nendes muutujaid ja  asendada  neid nende väärtustega. Kuna ülakomades sõnedega  niimoodi  ei  tehta , töödeldakse
neid kiiremini. Echo käsu jaoks peab olema defineeritud vähemalt üks  parameeter , aga neid võib olla ka rohkem - siis neid tuleb
eraldada  komadega . Testimiseks käivitage järgmine fail:
echo.php

Näide 1.3.4
PHP käsurealt
Mõnikord võib tekkida vajadus PHP koodi käivitada masinas, kus veebiserverit pole. Siis PHP koodi võib käivitada ka käsurealt (ilma
veebiserverita ja brauserita). Selleks ava Windows opsüsteemis käsurea paneel (fail C:\Windows\system32\cmd.exe). Paneeli võib
käivitada ka järgmiselt: Start → Run → cmd. Käsurea paneelis mine EasyPHP www kausta ( käsk : cd), siis lisa tee php5 kaustani (käsk:
set  path ). Nüüd võid käivitada php  programme  lihtsalt kirjutades: php sinu_programm.php:
Lipp  -r võimaldab kirjutada koodi otse käsureal:
Lisalugemist
Echo (www) - inglise keeles
PHP Märgendid (www) - inglise keeles
Eraldajad (www) - inglise keeles
Kommentaarid (www) - inglise keeles
80% sisust ei kuvatud. Kogu dokumendi sisu näed kui laed faili alla
Vasakule Paremale
Programmeerimine PHP #1 Programmeerimine PHP #2 Programmeerimine PHP #3 Programmeerimine PHP #4 Programmeerimine PHP #5 Programmeerimine PHP #6 Programmeerimine PHP #7 Programmeerimine PHP #8 Programmeerimine PHP #9 Programmeerimine PHP #10 Programmeerimine PHP #11 Programmeerimine PHP #12 Programmeerimine PHP #13 Programmeerimine PHP #14 Programmeerimine PHP #15 Programmeerimine PHP #16 Programmeerimine PHP #17 Programmeerimine PHP #18 Programmeerimine PHP #19 Programmeerimine PHP #20 Programmeerimine PHP #21 Programmeerimine PHP #22 Programmeerimine PHP #23 Programmeerimine PHP #24 Programmeerimine PHP #25 Programmeerimine PHP #26 Programmeerimine PHP #27 Programmeerimine PHP #28 Programmeerimine PHP #29 Programmeerimine PHP #30 Programmeerimine PHP #31 Programmeerimine PHP #32 Programmeerimine PHP #33 Programmeerimine PHP #34 Programmeerimine PHP #35 Programmeerimine PHP #36 Programmeerimine PHP #37 Programmeerimine PHP #38 Programmeerimine PHP #39 Programmeerimine PHP #40 Programmeerimine PHP #41 Programmeerimine PHP #42 Programmeerimine PHP #43 Programmeerimine PHP #44 Programmeerimine PHP #45 Programmeerimine PHP #46 Programmeerimine PHP #47 Programmeerimine PHP #48 Programmeerimine PHP #49 Programmeerimine PHP #50 Programmeerimine PHP #51 Programmeerimine PHP #52 Programmeerimine PHP #53 Programmeerimine PHP #54 Programmeerimine PHP #55 Programmeerimine PHP #56 Programmeerimine PHP #57 Programmeerimine PHP #58 Programmeerimine PHP #59 Programmeerimine PHP #60 Programmeerimine PHP #61 Programmeerimine PHP #62 Programmeerimine PHP #63 Programmeerimine PHP #64 Programmeerimine PHP #65 Programmeerimine PHP #66 Programmeerimine PHP #67
Punktid 100 punkti Autor soovib selle materjali allalaadimise eest saada 100 punkti.
Leheküljed ~ 67 lehte Lehekülgede arv dokumendis
Aeg2015-02-10 Kuupäev, millal dokument üles laeti
Allalaadimisi 21 laadimist Kokku alla laetud
Kommentaarid 0 arvamust Teiste kasutajate poolt lisatud kommentaarid
Autor reinok Õppematerjali autor

Lisainfo

Materjalist saab programmeerimiseks vajalikku materjali.
echo , program , muutuja , server , export , echoa , array , veebiserver , apache , programme , switch , round , programmid , konstant , temperature

Mõisted


Meedia

Kommentaarid (0)

Kommentaarid sellele materjalile puuduvad. Ole esimene ja kommenteeri


Sarnased materjalid

89
doc
Loogika ja programmeerimine
555
doc
Programmeerimiskeel
6
doc
Programmeerimise mõisted
16
doc
C-Progammeerimise keel
9
pdf
Referaat-Programmeerimine
575
docx
Nimetu
22
docx
Programmeerimine
49
doc
Java programmeerimise konspekt



Faili allalaadimiseks, pead sisse logima
Kasutajanimi / Email
Parool

Unustasid parooli?

UUTELE LIITUJATELE KONTO MOBIILIGA AKTIVEERIMISEL +50 PUNKTI !
Pole kasutajat?

Tee tasuta konto

Sellel veebilehel kasutatakse küpsiseid. Kasutamist jätkates nõustute küpsiste ja veebilehe üldtingimustega Nõustun