Programmering B PHP Lektion 2 Mahmud Al Hakim Folkuniversitetet mahmud@dynamicos.se PHP - Lektion 3 1 1
Agenda Variabler Datatyper Operatorer Att läsa: Sid. 12-17 Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
Repetition Programmeringsspråken brukar delas upp i två grupper efter hur programmen kompileras och körs. Beskriv skillnaden mellan ” Kompilerande språk” och ” Interpreterande språk”! Ge några exempel. Vad är fördelar och nackdelar med respektive grupp? Vad är en kompilator? När man "kompilerar" ett program så utför man egentligen 3 steg. Ett fjärde steg utförs precis innan programmet laddas för att köras. Beskriv dessa steg? PHP - ett skriptspråk för webbservrar. Vad är en webbserver? Ge ett exempel. Skapa en PHP-sida som skriver ut ditt namn i webbläsaren (body). Skapa ett skript som hämtar ett ord från URLn (webbadressen) och visar ordet i webbläsaren. Skapa ett skript som hämtar ett ord eller flera ord (sträng) från URLn (webbadressen) och visar strängen i webbläsarens titelrad. 3 Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2010 3
PHP Variabler En variabel är en platshållare för ett värde som kan ändras under programmets gång. <?php $namn = "Mahmud Al Hakim"; echo $namn; ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
Datatyper Skalära Sammansatta Övriga speciella boolean, bool (true, false) integer, int (heltal) float, double, real (reella tal) string (Textsträngar) Sammansatta arrayer (En samling av värden som indexeras antingen av en integer eller string). objekt Övriga speciella NULL (Variabeln har inget värde alls). resource (Innehåller en referens till en extern tillgång). Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
Operatorer En operator är något som verkar på en eller flera termer. Exempel på operatorer är +, - , * och / som gör precis vad ni tror att de gör. Dessa kallas ”Aritmetiska operatorer”. <?php echo 1 + 2; echo 2 - 1; echo 2 * 3; echo 10 / 2; echo 10 % 3; /* % kallas modulus ger Resten av division mellan 10 och 3 */ ?>
Tilldelningsoperatorer Det finns bara en tilldelningsoperator och den heter helt enkelt "tilldelas". Den representeras av ett lika-med-tecken (=). <?php $a = 1; $b = 2; $c = $a + $b; /* Utläses, c tilldelas värdet av a + b */ echo $c; ?>
+= och -= <?php $a += 5; //Samma sak som $a = $a + 5 echo "<br />"; echo $a; $a -= 5; //Samma sak som $a = $a - 5 ?>
Jämförelseoperatorer Jämförelseoperatorer arbetar på tal och returnerar alltid ett värde av typen boolean. Det vill säga true eller false.
Strängoperatorer <?php $a = "Kalle "; //$a tilldelas "Kalle " $t = $a . "Anka"; //$t innehåller nu "Kalle Anka" $s = "Kalle "; $s .= "Anka"; //Samma sak som $s = $s . "Anka" ?>
Hämta data via den globala variablen $_GET <?php $namn = $_GET['namn']; echo "Hej ". $namn; ?> Variabelnamn och data kan skrivas direkt i URLen ex. hej.php?namn=Mahmud Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
Skicka variabler via ett formulär <body> <form id="myform" name="myform" method="post" action="hej.php"> Vad heter du <input id="namn" name="namn" type="text” /> <input type="submit" name="Submit" value="Skicka" /> </form> </body> Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
if (villkor) { en eller flera satser om villkoret är sant } If - syntax if (villkor) { en eller flera satser om villkoret är sant } Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011
Hämta data via $_POST OBS! Formuläret har metoden POST (method="post") och därför måste data hämtas via den globala variablen $_POST Exempel: <?php $namn = $_POST['namn']; echo "Hej ". $namn; ?> Copyright, www.dynamicos.se, Mahmud Al Hakim, mahmud@dynamicos.se, 2011