PHP.ee
 php.ee   linuxator.com   whee 
19.05.12 / 02:05
  Artiklid
  » Algajaile
  » Andmebaasid
  » Varia
  » Graafika
  » Advanced
Logi sisse:
< nimi
< pass
Unustasid passi?
Kas eelistad võimalusel PHP koodi objektorienteeritult kirjutada?
 Jah, see teeb töö lihtsamaks
 Jah, see on lihtsalt lahe
 Nii ja naa, ei tunne erilist võitu
 Ei, mõttetu ajakulu
 Ei oska objektorienteeritult progeda
Tulemused
Liitu listiga!
Telli PHP uudiskiri
Nimi:
Email
PHP - esimesed sammud algajaile
Martin Rebane

PHP ehk PHP: Hypertext Preprocessor on võimas vahend veebimeistrite töö vähendamiseks ning HTML'i dünaamiliseks esitamiseks, ta teeb lihtsaks ka veebilehtede ehitamisel andmebaaside kasutamise.

PHP jooksutamiseks on vaja PHP serverit. Niisama kirjutan-koodi ja vaatan-brauseris põhimõttel asi ei tööta. Fail tuleb uploadida serverisse(nagu nt zone.ee) ja siis sealt brauseriga vaadata.

PHP abiga anname me serverile käsud, mida ja millal ta tegema peab. Server täidab need ja annab kasutajale valmis veebilehe.

Nõnda, kuidas siis PHP töötab?

Üks väärarusaam, mis on suhteliselt levinud, on et PHP on HTML-keele asendaja. Ei. PHP abil saame htmli ehitada. Võtame lihtsa näite.
Meil on html dokument:

<html>
</html>

ning meil on hirmus soov sinna kirjutada 'Teretulemast minu kodukale, täna on ilus päev!'
Kõigepealt paigaldame koodi sisse PHP märgendid:

<html>
<?php
?>
</html>

Nüüd lisame sinna oma lause.

PHP kood:


 
<html>
<?
php
echo "Teretulemast minu kodukale, täna on ilus päev!";
?>
</html>



Selleks kasutasime PHP funktsiooni echo; echo süntaks on põhimõtteliselt järgmine: echo string;. Stringi asemele panime seekord lause. Lause edastamiseks peame selle jutumärkidesse panema. Sama asja saaks teha ka teisiti, kõigepealt deklareerime oma lause ära:

PHP kood:


 
<?php
$lause
="Teretulemast minu kodukale, täna on ilus päev!";

echo 
$lause;
?>


Ja brauseris näeks see asi välja niimoodi:

Teretulemast minu kodukale, täna on ilus päev!

Mis siis juhtus?

Nimelt me andsime muutujale $lause väärtuse 'Teretulemast minu kodukale, täna on ilus päev!'. Ning igal pool, kus meie kirjutame $lause, loeb PHP seda kui 'Teretulemast minu kodukale, täna on ilus päev'.

Ok, tore on, aga miks oli kõige selle tegemiseks vaja PHP'd, selle oleks ju saanud ka lihtsalt html'iga ära teha. Tõepoolest. Aga vaatame nüüd olukorda, kus sinu lehte külastatakse õhtusel ajal, siis ei sobi ju nentida, et on ilus päev!?

Teeme asja dünaamiliseks! ehk paneme PHP tööle.

Kõigepealt on meil vaja teada saada, mis kell on, sest muidu me ilmselt ei saaks kasutajat õieti tervitada...

Selleks kasutame funktsiooni date, millel on hirmus palju parameetreid, meie kasutame nendest ainult "H"'i, mis näitab käesolevat tundi kahekümne nelja tunni süsteemis.

date("H")

Juhul, kui kell on näiteks 14.45 on date("H"); väärtus 14

Selleks, et teada saada kas preagu on päev või öö peame date'i võrdlema oma päeva definitsiooniga, ütleme et päev on meil kell 8-21. Siin tuleb mängu lausekonstruktsioon if. Vaatleme kõigepealt selle sünaksit:

if (võrdluslause)
{teeme seda}
elseif
{teeme teist}
else
{teeme kolmandat}

Nii. Üks lihtne näide:

PHP kood:


 
if ($lause)
    echo 
$lause;
else
    echo 
"Viga!";


Kontrollisime, kas muutuja $lause on olemas, kui on siis ütleme selle väärtuse kasutajale, kui ei, ütleme veateate.

Mainiksin veel niipalju, et lause else-osa võib ka täiesti puududa. Kui aga tahame, et php teeks mitut asja, tuleb sisse tuua loogelised sulud:

PHP kood:


 
if ($lause)
{
    echo 
$lause;
    echo
"täname külastamast!";
}
else
    echo 
"Viga!";


Nii, nüüd peaks if vast enam-vähem selge olema, nüüd tagasi oma esialgse näite juurde, tervitame kasutajat. Nüüd peaks see koodiosa juba päris arusaadav olema:

PHP kood:


 
<?php
$lause1
="Teretulemast minu kodukale, ilus päev täna!";
$lause2="Teretulemast minu kodukale, ööloom sihuke :)";

if (
8<=date("H") && 21>=date("H"))
    echo 
$lause1//ütleme esimese lause
else
    echo 
$lause2//ütleme teise lause
?>


Igaks juhuks vaatame veel üle ifi süntaksi:

if (8<=date("H") && 21>=date("H"))

Seda loeme niimoodi: kui 8 on väiksem või võrdne kui pregune tund JA 21 on suurem või võrdne kui preagune tund, siis on if- lause tõene.

Teine asi, mida sa ilmselt märkasid, on kommentaarid - nimelt, kui tahad php-faili lisada midagi, mis sul muidu meelest ära võib minna, kasuta //kommentaar siia.

Paar nüanssi veel:
kui sa soovid echo'ga ütelda midagi, mis sisaldab jutumärke, näiteks: John "Kapsanägu" Smith, siis tuleb selle märgi ees kasutada tagurpidi kaldkriipsu:

echo "John \"Kapsanägu\" Smith";

Brauseris näeme aga:

John "Kapsanägu" Smith

Lõppu veel selline märkus, et enamasti selleks, et kood töötaks, peab faili laiend olema .php või .php3, olenevalt serverist, kus seda kasutad ja loomulikult peab server ka PHP'd toetama. Eestis on selliseks tasuta kohaks zone.ee - seal saad kasutajakonto zone.ee/sinunimi ja reklaamiakna :), kui soovid aga PHP-toetust, veidi paremat teenust ja oma domeeni nt. omanimi.com, siis PHP.ee soovitab Elkdata(elkdata.com) teenuseid - ka PHP.ee ise on samas serveripargis.

Siit saad endale viimase näite koodi tõmmata ja oma leheküljel asja järgi proovida: time.txt.

Artikli kommentaarid

O