⊗ppOpBsInr 1 of 107 menu

Johdatus OOP:hen PHP:ssä

Nyt alamme opiskella OOP:ta PHP:ssä. Tarkastellaanpa esimerkkiä arkiympäristöstä ja siirrämme sen sitten PHP:hen.

Otetaan esimerkiksi auto. Sillä on renkaat, väri, kori tyyppi, moottorin tilavuus ja niin edelleen. Lisäksi kuljettaja voi antaa sille komentoja: aja, pysähdy, käänny oikealle, vasemmalle jne.

Voidaan sanoa, että on olemassa tietty luokka autoja, joilla on yhteisiä ominaisuuksia (kaikilla on renkaat ja kaikille niille voidaan antaa komentoja).

Tietty kadulla seisova auto - on tämän luokan edustaja, tai toisin sanoin, olio tästä luokasta. Kaikilla tämän luokan olioilla on ominaisuudet: renkaiden lukumäärä, väri, kori tyyppi ja metodit: aja, pysähdy, käänny oikealle, vasemmalle.

Toisin sanoen itse luokka on piirustus, jonka mukaan tehtaalla valmistetaan autoja. Olio on itse auto, joka on valmistettu näiden piirustusten mukaan.

PHP:ssä luokka luodaan käyttämällä avainsanaa class, jota seuraa luokan nimi. Tehdään luokka Car:

<?php class Car { // tässä koodi, eli PHP-piirustus autosta } ?>

Määritellään nyt piirustuksessamme, että mikä tahansa auto, joka luodaan tämän piirustuksen mukaan, tulee olemaan ominaisuus värille ja ominaisuus polttoaineen määrälle.

Tätä varten kirjoitamme luokan sisälle ominaisuuden $color ja ominaisuuden $fuel:

<?php class Car { // Määritellään ominaisuudet (olennaisesti luokan muuttujat): public $color; // auton väri public $fuel; // polttoaineen määrä } ?>

Tehdään nyt luokkamme metodit. PHP:ssä metodit, kuten tavalliset funktiot, määritellään käyttämällä avainsanaa function, jota edeltää avainsana public.

Kuten aiemmin mainittiin, automme voi ajaa, se voi kääntyä, se voi pysähtyä. Tehdään vastaavat metodit luokkaamme:

<?php class Car { public $color; // auton väri public $fuel; // polttoaineen määrä // Komento aja: public function go() { // jotain PHP-koodia } // Komento käänny: public function turn() { // jotain PHP-koodia } // Komento pysähdy: public function stop() { // jotain PHP-koodia } } ?>

Olemme tehneet automme piirustuksen. Nyt täytyy mennä tehtaalle ja tehdä tämän luokan olio (eli tietty auto).

PHP:ssä tämä tehdään käyttämällä avainsanaa new, jonka jälkeen kirjoitetaan luokan nimi:

<?php new Car; ?>

Kuitenkin, jos vain luo luokan olion - se ei johda mihinkään (se on kuin esimerkiksi ilmoittaisi taulukon eikä tallentaisi sitä minnekään). Tarvitsemme muuttujan tämän olion tallentamiseksi.

Olkoon tämä muuttuja nimeltään $myCar - tallennamme siihen luomamme olion:

<?php $myCar = new Car; ?>

Auton luomisen jälkeen voidaan viitata sEN ominaisuuksiin. Niihin viitataan nuolen -> kautta. Asetetaan olion ominaisuudet:

<?php $myCar = new Car; // käsketään tehdasta valmistamaan auton // Asetetaan olion ominaisuudet: $myCar->color = 'red'; // maalataan punaiseksi $myCar->fuel = 50; // tankataan polttoainetta ?>

Valmista, automme on luotu, maalattu ja tankattu. Nyt voimme antaa sille komentoja tämän auton metodien kautta.

Metodeihin viitataan myös nuolen kautta, mutta toisin kuin ominaisuudessa, metodin nimen jälkeen tulee kirjoittaa pyöreät sulkeet. Komentakaamme oliotamme:

<?php $myCar->go(); $myCar->turn(); $myCar->stop(); ?>
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää