Normipäivä:

Alkaa <?php -tagilla ja loppuu ?> -tagilla

Melkein kaikki rivit loppuvat puolipisteeseen ;

Yhden rivin kommentit // ja isot kommentit /* kommentti */

<?php
// Komento tulostaa tekstin Hoivinmeivin!
echo "Hoivinmeivin!";
?>

Muuttujat:

$muuttujan_nimi = arvo;

PHP tunnistaa automaattisesti muuttujan sisällön (teksti, numero)

Muuttujan nimessä saa olla kirjaimia a-z (isoja ja pieniä), numeroita ja alaviivoja. Muuttuja ei saa alkaa numerolla.

Eri muuttujat yhdistetään pisteellä .

<?php
$teksti1="Hoivin";
$teksti2="meivin!";
echo $teksti1 . " " . $teksti2;
?>

Tulostaa Hoivin meivin! , lainausmerkit keskellä lisäävät välilyönnin.


Operaattorit:

Sijoitusoperaattori = : x=y, jolloin x on yhtäsuuri kuin y

Operaattori Laskutoimitus Tulos
+ x=3
x+2
5
- x=3
9-x
6
* x=2
x*3
6
/ x=4
x/2
2
% (modulaatio, paljonko jaköjäännöstä) 5%2
10%2
1
0
++ (lisää 1) x=5
x++
x=6 (vaikuttaa muuttujaan)
-- x=5
x--
x=4

Muuttujia käytettäessä on muistettava $ muuttujan alussa!

<?php
$x=4;
echo $x/2;
?>

Vertailuoperaattorit:

Vertailuoperaattori Laskutoimitus Tulos
== yhtäsuuri kuin 3==4 false
!= ei ole yhtäsuuri kuin 3!=4 true
> suurempi kuin 3>4 false
< pienempi kuin 3<4 true
>= suurempi tai yhtäsuuri kuin 3>=4 false
<= pienempi tai yhtäsuuri kuin 3<=4 true

Loogiset operaattorit

Looginen operaattori Laskutoimitus Tulos
&& ja x=6
y=3
(x < 10 && y > 1)
true
|| tai y=6
y=3
(x==5 || y==5)
false
! ei x=6
y=3
!(x==y)
true

Ehdot

if (ehto)
suoritettava koodi jos ehto on tosi;
else
suoritettava koodi jos ehto on epätosi;

Esimerkki tulostaa ensimmäisen tekstin, koska muuttujan x arvo on 3:

<?php
$x=3;
if ($x==3)
echo "No kolmehan se siinä!";
else
echo "X ei ole kolme :(";
?>

Jos ehdon täyttyessä halutaan suorittaa monta komentoa, laitetaan komennot {}-sulkeisiin kuten seuraavassa esimerkissä.

Elseif on kuin else, mutta ehdon kera. Jos ensimmäinen ehto ei täyty, toinen ehto voi täyttyä:

<?php
$x=3;
if ($x==3)
{
echo "No kolmehan se siinä! <br />";
echo "Maista uusinta kebabiamme!";
}
elseif ($x>3)
echo "X on suurempi kuin kolme";
else
echo "X on pienempi kuin kolme :(";
?>

Switch (kytkin)

Käytetään kun on paljon vaihtoehtoja ja if-lauseista tulisi liian pitkiä. Casessa voi käyttää myös tekstiä numeroiden sijasta ja monta case-ehtoa voi laittaa peräkkäin. Break pysäyttää switchin.

<?php
$x=1;
switch ($x)
{
case 1:
echo "X-muuttujan arvo on yksi.";
break;
case 2:
echo "X-muuttujan arvo on kaksi.";
break;
case 3:
echo "X-muuttujan arvo on kolme.";
break;
default:
echo "X-muuttujan arvo ei ole yhden ja kolmen välillä.";
}
?>

Loopit

While suorittaa koodia jos ja niin kauan kuin ehto on tosi.

while (ehto)
suoritettava koodi;

Esimerkki tulostaa numerot 1-5 while-silmukalla ja laittaa rivinvaihdon perään:

$x=1;
while($x<=5)
{
echo "X on " . $x . "<br />";
$x++;
}

Do While suorittaa ensin tietyn komennon ja sen jälkeen ehdon mukaisesti suorittaa sen uudelleen:

do
{
suoritettava koodi;
}
while (ehto);

For

for (alku; ehto; loppu)
{
suoritettava koodi;
}

Esimerkki tulostaa kebabia 5 kertaa...:

for ($x=1; $x<=5; $x++)
{
echo "Kebab on maukasta!<br />";
}

Funktiot

Funktio on kuin komentomuuttuja. Kaikki funktiot alkavat sanalla function. Esimerkkinä yksinkertainen kebab-tulostus:

function kebab()
{
echo "kebab";
}

Käyttö sivulla, tulostaa Pub Dilanissa käydyn dialogin:

function kebab()
{
echo "kebab";
}
echo "Mitä saisi olla?<br />";
echo "Yksi ";
kebab();
echo ", kiitos!";

Laitetaan hieman parametreja kehiin, niin saadaan hieman erilaisia kebabeja:

function kebab($tyyppi,$maksutapa)
{
echo "Ottaisin yhden kebabin ". $tyyppi . ", kiitos. Maksan sen " . $maksutapa . ". <br />";
}
echo "Mitä saisi olla? <br />";
kebab("ranskalaisilla","käteisellä");
kebab("riisillä","luottokortilla");

Funktioilla voidaan myös laskea:

function ynnays($x,$y)
{
echo $x + $y;
}
echo "2 + 5 = ";
ynnays(2,5);

Lomakkeet

Esimerkissä tilaus ja varmistus:

<form action="tilaus.php" method="post">
Tuote: <input type="text" name="tuote" />
Maksuväline: <input type="text" name="maksuvaline" />
<input type="submit" />
</form>

tilaus.php -tiedosto:

Tilasit tuotteen <?php echo $_POST["tuote"]; ?>. <br />
Haluatko varmasti käyttää maksuvälinettä <?php echo $_POST["maksuvaline"]; ?>?


Sähköposti

mail(kenelle,aihe,viesti,header,parametrit)

Yksinkertainen skripti muuttujilla toteutettuna (header ($otsikko) ei ole pakollinen):

$kenelle = "esimerkki@raita.sytes.net";
$aihe = "Lähdetäänkö kebabille?";
$viesti = "Hoi, tavataan kolmelta Pub Dilanissa?";
$kenelta = "iivo@raita.sytes.net";
$otsikko = "From: $kenelta";
mail($kenelle,$aihe,$viesti,$otsikko);
echo "Sähköposti lähetetty osoitteeseen " . $kenelle . "!";



Komentoja:

echo strlen("Hoivin kebab!"); - kuinka pitkä jono (tulos 13)

echo strpos("Maukas kebab!","kebab"); - missä on kebab (tulos 8 koska eka numero on 0)

<?php include("sivu.php"); ?> - sisällyttää toisen sivun sivuun...

$random = rand(1, 10); - asettaa muuttujan random arvoksi randomina jonkun luvun lukujen 1 ja 10 väliltä

$paivamaara=date("DMWY"); D=Day 3 ensimmäistä kirjainta esim. Mon, M=Month 3 ensimmäistä kirjinta, W=Week kaksi numeroa, Y=Year vuosiluku

Päivämäärän tarkemmat parametrit ja muita komentoja löytyy osoitteesta http://www.w3schools.com/PHP/php_ref_date.asp


Valid XHTML 1.0 Transitional