PHP Academy · Oppitunti

PHP:n tietotyyppien yleiskatsaus

Tutustukaa PHP:n merkkijonoihin, kokonaislukuihin, liukulukuihin, totuusarvoihin ja NULL-arvoon.

Oppitunti 2/413 vaihetta

PHP:n tietotyyppien yleiskatsaus on ilmainen PHP Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu PHP Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. PHP Academy-kurssilla on yhteensä 4 oppituntia.

PHP:n keskeiset tietotyypit

PHP tukee neljää skalaarityyppiä sekä useita yhdistelmä- ja erityistyyppejä:

  • Skalaari: string, int, float, bool
  • Yhdistelmätyyppi: array, object
  • Erityistyyppi: NULL, resource

PHP valitsee tyypin automaattisesti asiayhteyden perusteella — tätä kutsutaan tyyppien automaattiseksi muuntamiseksi.

Merkkijonot

Merkkijonot sisältävät tekstiä. Käyttäkää yksinkertaisia tai kaksinkertaisia lainausmerkkejä:

<?php
$single = 'Hello World';     // single — no variable parsing
$name   = 'PHP';
$double = "Hello $name";     // double — variables are interpolated

echo $double; // Hello PHP
echo strlen($single); // 11

Kokonaisluvut ja liukuluvut

PHP:n kokonaisluvut ovat kokonaislukuja, kun taas float- eli double-arvot sisältävät desimaaliarvoja:

<?php
$count  = 42;         // int
$neg    = -7;         // negative int
$hex    = 0x1A;       // hexadecimal = 26
$price  = 19.99;      // float
$sci    = 1.5e3;      // scientific = 1500.0

echo PHP_INT_MAX;   // largest integer on this platform
echo PHP_FLOAT_MAX; // largest float

Totuusarvot

Totuusarvo on joko true tai false. PHP tulkitsee monet arvot tosi- tai epätosiarvoisiksi:

  • Epätosiarvoiset: false, 0, 0.0, '', '0', [], NULL
  • Tosiarvoiset: kaikki muut
<?php
$isActive = true;
$isDone   = false;

if ($isActive) {
    echo 'Active';   // runs
}

var_dump((bool) '');   // bool(false)
var_dump((bool) 'hi'); // bool(true)

NULL

NULL ilmaisee, että arvo puuttuu tarkoituksellisesti:

  • Muuttuja on NULL, jos sille on määritetty NULL, jos sille ei ole koskaan määritetty arvoa tai jos se on poistettu
  • Testatkaa NULL-arvo käyttämällä is_null($var)-funktiota tai ilmaisua === null
<?php
$nothing = null;

var_dump(is_null($nothing));   // bool(true)
var_dump($nothing === null);   // bool(true)
var_dump($nothing == false);   // bool(true) — loose comparison

Taulukot tietotyyppinä

PHP:n taulukot voivat sisältää eri tyyppisiä arvoja, ja niissä voidaan käyttää kokonaisluku- tai merkkijonoavaimia:

<?php
$mixed = [42, 'hello', true, null];
$map   = ['name' => 'Alice', 'age' => 30];

echo gettype($mixed);        // array
echo count($mixed);          // 4
echo $map['name'];           // Alice

Tyyppifunktiot

PHP tarjoaa is_*-funktioita tyyppien tarkistamiseen suorituksen aikana:

<?php
$val = 3.14;

var_dump(is_int($val));    // bool(false)
var_dump(is_float($val));  // bool(true)
var_dump(is_string($val)); // bool(false)
var_dump(is_numeric('42')); // bool(true) — string that looks like a number

Tiukkojen tyyppien määritys

PHP 7+ mahdollistaa tiukan tyyppitilan määrittämisen tiedoston alussa:

<?php
declare(strict_types=1);

function add(int $a, int $b): int {
    return $a + $b;
}

echo add(3, 4);    // 7
// add(3, '4');   // TypeError in strict mode!

Funktioiden tyyppivihjeet

PHP 7+ tukee parametrien ja palautustyyppien tyyppivihjeitä, jotka parantavat koodin selkeyttä ja auttavat havaitsemaan virheitä:

<?php
function greet(string $name): string {
    return 'Hello, ' . $name . '!';
}

function divide(float $a, float $b): ?float {
    if ($b === 0.0) return null;  // nullable return
    return $a / $b;
}

echo greet('PHP');          // Hello, PHP!
var_dump(divide(10, 0));    // NULL

Resurssit

Resource on erityinen muuttuja, joka sisältää viittauksen ulkoiseen resurssiin, kuten tiedostokahvaan tai tietokantayhteyteen:

<?php
// fopen returns a resource
$handle = fopen('data.txt', 'r');

echo gettype($handle); // resource

fclose($handle); // always free resources when done

Union-tyypit (PHP 8)

PHP 8 esitteli union-tyypit, joiden ansiosta parametri tai palautusarvo voi hyväksyä useita tyyppejä:

<?php
declare(strict_types=1);

function format(int|float $number): string {
    return number_format($number, 2);
}

echo format(1234);     // 1,234.00
echo format(9.5);      // 9.50

Pikatarkistus

Minkä arvon PHP:n is_numeric()-funktio palauttaa merkkijonolle '42'?

Kertaus: PHP:n tietotyypit

Olette tutustuneet PHP:n tyyppijärjestelmään:

  • Skalaari­tyypit: string, int, float, bool
  • NULL ilmaisee arvon tarkoituksellisen puuttumisen
  • Taulukot ja oliot ovat yhdistelmätyyppejä
  • Resurssit edustavat ulkoisia kahvoja
  • PHP 8:n union-tyypit mahdollistavat joustavat allekirjoitukset
  • Tiukka tila määritetään käyttämällä declare(strict_types=1)

Seuraavaksi käsittelemme tietojen tulostamista selaimeen echo- ja print-rakenteilla.

Aloita maksutta

Opi PHP tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
49
Oppitunnit
195

Usein kysytyt kysymykset

Onko oppitunti ”PHP:n tietotyyppien yleiskatsaus” ilmainen?

Kyllä – oppitunnin ”PHP:n tietotyyppien yleiskatsaus” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko PHP Academy-kurssin, päivitä CoddyKit PROhon. PHP Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”PHP:n tietotyyppien yleiskatsaus”?

Tutustukaa PHP:n merkkijonoihin, kokonaislukuihin, liukulukuihin, totuusarvoihin ja NULL-arvoon. Harjoittelet PHP Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni PHP Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin PHP Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”PHP:n tietotyyppien yleiskatsaus”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä PHP Academy-oppitunnilla?

Kyllä. Jokainen PHP Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Muuttujien määrittäminen PHP:ssä
  2. PHP:n tietotyyppien yleiskatsaus
  3. Tulosteen tuottaminen echolla ja printillä
  4. Tyyppien automaattinen muunnos ja tyyppimuunnokset
← Takaisin: PHP Academy