Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Tietotyypit Tietotyyppi määrittää muuttujan sisältämän datan luonnetta, muistista tarvittavaa tilaa ja sitä, millaisia operaatioita siihen voidaan kohdistaa.

Samankaltaiset esitykset


Esitys aiheesta: "Tietotyypit Tietotyyppi määrittää muuttujan sisältämän datan luonnetta, muistista tarvittavaa tilaa ja sitä, millaisia operaatioita siihen voidaan kohdistaa."— Esityksen transkriptio:

1 Tietotyypit Tietotyyppi määrittää muuttujan sisältämän datan luonnetta, muistista tarvittavaa tilaa ja sitä, millaisia operaatioita siihen voidaan kohdistaa. Tietotyypit voidaan jakaa yksinkertaisiin, jolloin muuttujaan liittyy kerrallaan täsmälleen yksi arvo Rakenteisiin, jolloin muuttujaan voi liittyä kerrallaan useita arvoja Tietotyypit tMyn

2 PHP-kielessä yksinkertaisia tietotyyppejä ovat:
boolean (totuusarvo) integer (kokonaisluku) float (liukuluku) string (merkkijono) Rakenteisia tietotyyppejä ovat: array (taulukko) object (olio) Tietotyypit tMyn

3 Arvoina voivat olla ainoastaan TRUE tai FALSE.
Totuusarvo boolean Arvoina voivat olla ainoastaan TRUE tai FALSE. Isojen ja pienten kirjainten ero jätetään huomiotta: $tottaVaiTarua=False; Kun jonkin muun tyypin muuttujaa muutetaan totuusarvoksi, niin seuraavat arvot muunnetaan boolean-tyypin FALSE-arvoksi: Tietotyypit tMyn

4 string: tyhjä merkkijono ja merkkijono ”0”
boolean: FALSE integer: 0 float: 0.0 string: tyhjä merkkijono ja merkkijono ”0” array: tyhjä taulukko, ei alkioita Muut arvot muutetaan TRUE-arvoksi: Tietotyypit tMyn

5 Tietotyypit tMyn

6 Tietotyypit tMyn

7 Kokonaisluku – integer
Integer-tyypin muuttuja voi sisältää etumerkillisiä kymmen-, heksadesimaali- ja oktaalijärjestelmän lukuja. Oktaalijärjestelmän luvut merkitään edeltävällä nollalla (0). Heksadesimaalijärjestelmän luvut merkitään edeltävällä nollalla ja x-merkillä (0x): $ekaInt=-12; //-12 kymmen //järjestelmässä $tokaInt=012;//Oktaaliluku, kymmen- //järjestelmässä 10 Tietotyypit tMyn

8 $kolmasInt=0x12;//Heksades.luku, //kymmenjärjestelmässä //luku 18
Tyypillisesti järjestelmästä riippuva kokonaisluvulle varattu muistipaikka on 32-bittinen (etumerkillinen). Jos integer-tyypin muuttujalle syötetään nämä rajat ylittäviä arvoja, PHP muuttaa muuttujan tyypin automaattisesti float-tyyppiin. Tietotyypit tMyn

9 Tietotyypit tMyn

10 Tietotyypit tMyn

11 Float-tyypin muuttujia voidaan asettaa esim. seuraavilla tavoilla:
Liukuluku – float Float-tyypin muuttujia voidaan asettaa esim. seuraavilla tavoilla: $ekaFlo=1.2; $tokaFlo=1.2e3; //1200 $kolmasFlo=3E-5; // Tietotyypit tMyn

12 String-tyypin muuttuja sisältää merkkijonon, joka voidaan määritellä:
Merkkijono – string String-tyypin muuttuja sisältää merkkijonon, joka voidaan määritellä: Heittomerkein: ’ Lainausmerkein: ” Nk. Heredoc-syntaksilla (Here Document) Käytettäessä heredoc-syntaksia on tärkeää, että aloittava rivi päättyy merkkeihin <<<TUNNISTIN. Esimerkissä vapaasti valittavana tunnistimena on EOD (End Of Data). Tietotyypit tMyn

13 $ekaStr=’Nyt tuli merkkijono’; $tokaStr=”Nyt tuli toinen merkkijono”;
Merkkijonon päättävän tunnistimen on oltava rivin alussa. Sen ja puolipisteen lisäksi rivillä ei saa olla mitään muuta. $ekaStr=’Nyt tuli merkkijono’; $tokaStr=”Nyt tuli toinen merkkijono”; $kolmasStr=<<<EOD Tämä on sitten se heredoc-syntaksilla kirjoitettu merkkijono. EOD; Tietotyypit tMyn

14 Heittomerkki itse esitetään muodossa \’.
Kun merkkijono määritellään heittomerkein, kaikki siihen kuuluvat (kirjoittuvat) merkit esittävät itseään – lukuun ottamatta kenoviivaa ja heittomerkkiä itseään. Heittomerkki itse esitetään muodossa \’. Heittomerkein määriteltyyn merkkijonoon kuuluvat muuttujien nimet (alkavat dollarimerkillä) tulostuvat sellaisinaan – siis sisältöjä ei tule tulostetuksi: Tietotyypit tMyn

15 Tietotyypit tMyn

16 Tietotyypit tMyn

17 Lisäksi on käytössä vaikkapa \n rivinvaihtomerkki (linefeed)
Kun merkkijono määritellään lainausmerkein, siihen kuuluva lainausmerkki pitää esittää muodossa \”. Lisäksi on käytössä vaikkapa \n rivinvaihtomerkki (linefeed) \\ kenoviiva (reverse solidus). Lainausmerkein määritellyt merkkijonot jäsennetään (parse) käytettäessä. Merkkijonoihin kuuluvien muuttujien arvot korvaavat muuttujien nimet. Tietotyypit tMyn

18 Kokeillaan seuraavaksi merkkijonojen liitosoperaattoria, pistettä.
Lisäksi kokeillaan yksittäiseen merkkiin viittaamista indeksillä: Tietotyypit tMyn

19 Tietotyypit tMyn

20 Tietotyypit tMyn

21 Kumpikaan ei ole perinteisessä mielessä funktio.
PHP sisältää kaksi yleisesti käytettyä kielen sisäistä rakennetta (language construct) tulostamiseen: echo ja print. Kumpikaan ei ole perinteisessä mielessä funktio. Rakenne print palauttaa aina kokonaislukuarvon 1 ja echo ei mitään. Kumpaa tahansa voi siis käyttää, mutta kannattanee käyttää vain yhtä rakennetta yhtenevällä tavalla samassa ohjelmistossa. Tietotyypit tMyn

22 Tietotyypit tMyn

23 Tietotyypit tMyn

24 Tietotyypit tMyn

25 Tietotyypit tMyn

26 Taulukko – array PHP:ssä taulukkotyypin avulla voi rakentaa useita erilaisia tietorakenteita. Mainittakoon yksiulotteiset ja moniulotteiset taulukot, listat, jonot, pino ja puu. Taulukon indeksinä voi olla kokonaisluku tai merkkijono (assosiatiivinen taulukko, hajautustaulukko, hash table). Moniulotteiset taulukot muodostetaan käyttämällä taulukon elementin arvona toista taulukkoa, esim $taulukko[2][3]; Tietotyypit tMyn

27 Saman taulukon indeksit voivat olla erityyppisiä: $taulukko[”eka”][3];
Taulukkomuuttujan kokoa ei tarvitse määrätä etukäteen. Taulukko voidaan luoda mm. sijoittamalla arvoja taulukkomuuttujaan array-käskyllä Taulukon luominen sijoittamalla arvoja taulukkomuuttujaan (taulukkomuuttujan nimen erottaa ”tavallisesta” muuttujasta hakasuluista): Tietotyypit tMyn

28 $ruoka[]=”Tomaatti”; //$ruoka[0]=”Tomaatti”
$ruoka[]=”Pinaatti”; //$ruoka[1]=”Pinaatti” $ruoka[6]=”Peruna”; //$ruoka[6]=”Peruna” $ruoka[]=”Salaatti”; // $ruoka[7]=”Salaatti” Jos sijoituslausekkeessa ei mainita indeksiä, sijoitettavan arvon indeksiksi tulee yhtä suurempi kuin suurin käytössä oleva kokonaislukuindeksi. Tietotyypit tMyn

29 Taulukon luominen array-käskyllä: Array-käskyn syntaksi on
array( [key=>] value ) Taulukon arvot erotetaan niihin mahdollisesti liittyvine avaimineen (indeksit) pilkulla toisistaan. Avain voi olla tyypiltään kokonaisluku tai merkkijono. Arvot voivat olla mitä tahansa tyyppejä, moniulotteisten taulukoiden tapauksessa myös taulukoita. Tietotyypit tMyn

30 Tietotyypit tMyn

31 Tietotyypit tMyn

32 The pre element defines preformatted text
The pre element defines preformatted text. The text enclosed in the pre element usually preserves spaces and line breaks. The text renders in a fixed-pitch font. Tietotyypit tMyn

33 print_r -- Prints human-readable information about a variable
Description void print_r (mixed expression) This function displays information about the values of variables in a way that's readable by humans. If given A string, integer orfloat, the value itself will be printed. If given an array, values will be presented in a format that shows keys and elements. Similar notation is used for objects. Remember that print_r() will move the array pointer to the end. Use reset() to bring it back to beginning. Tietotyypit tMyn

34 Tietotyypit tMyn

35 Tietotyypit tMyn

36 Tietotyypit tMyn

37 Tietotyypit tMyn

38 Erilaisia operaattoreita voidaan ryhmitellä käyttötarkoituksen mukaan:
Operaattorit Erilaisia operaattoreita voidaan ryhmitellä käyttötarkoituksen mukaan: Aritmeettiset operaattorit Sijoitusoperaattorit Vertailuoperaattorit Loogiset operaattorit Muut operaattorit Tietotyypit tMyn

39 Aritmeettiset operaattorit
Tietotyypit tMyn

40 Sijoitusoperaattorit
Monien muiden kielien tapaan PHP tarjoaa sijoitusoperaattorin (=) lisäksi monia lyhennysmerkintöjä sijoitusoperaattorin yhdistämiseksi muihin operaattoreihin. Tietotyypit tMyn

41 Vertailuoperaattorit
Operaation tuloksena on joko totuusarvo TRUE tai FALSE. Tietotyypit tMyn

42 Loogiset operaattorit
Loogisilla operaattoreilla voidaan mm. yhdistellä vertailujen tuloksia. Tietotyypit tMyn

43 Se määrittää sen, mihin operandeihin mikin operaattori kohdistuu.
Operaattoreita koskee ennalta asetettu sidontajärjestys eli presedenssi (precedence). Se määrittää sen, mihin operandeihin mikin operaattori kohdistuu. Jos sidontajärjestyksestä halutaan poiketa, on käytettävä sulkeita. Sulkeita voidaan käyttää myös pelkästään selkeyden vuoksi. Seuraavassa taulukossa operaattorien sidontajärjestys on esitetty ylenevässä järjestyksessä. Mitä alemmaksi taulukossa mennään, sitä vahvempi presedenssi kyseisessä laatikossa olevalla operaattorilla on. Tietotyypit tMyn

44 Assosiointi määrää sen, miten samalle tasolle kuuluvat operaattorit assosioivat keskenään.
Merkintä oikealta vasemmalle (<=) tarkoittaa sitä, että oikeanpuoleiset operaatiot sitovat voimakkaammin. Esim. sijoitusoperaattori assosioi oikealta vasemmalle. Siispä $a=$b=$c jäsennetään $a=($b=$c). Tietotyypit tMyn

45 Tietotyypit tMyn


Lataa ppt "Tietotyypit Tietotyyppi määrittää muuttujan sisältämän datan luonnetta, muistista tarvittavaa tilaa ja sitä, millaisia operaatioita siihen voidaan kohdistaa."

Samankaltaiset esitykset


Iklan oleh Google