⊗ppOpAdCOM 22 of 107 menu

Manipulation af objekter i klasser i OOP i PHP

Klasser som parameter til metoder kan tage objekter fra andre klasser og manipulere disse objekter. Lad os se på et eksempel. Lad os sige, at vi har følgende klasse:

<?php class User { private $name; public function __construct($name) { $this->name = $name; } public function getName() { return $this->name; } } ?>

Lad os sige, at vi besluttede at lave en klasse, som vil manipulere et sæt af objekter med brugere:

<?php class UsersCollection { } ?>

Vi vil gemme objekter med brugere i form af et array i en privat egenskab:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } } ?>

Lad os lave en metode til at tilføje en ny bruger til arrayet:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } public function add($user) { $this->users[] = $user; } } ?>

Og nu laver vi en metode, som vil vise alle brugernes navne:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } public function add($user) { $this->users[] = $user; } public function show() { foreach ($this->users as $user) { echo $user->getName() . '<br>'; } } } ?>

Lad os se på vores klasses funktion. Lad os først oprette dens objekt:

<?php $uc = new UsersCollection(); ?>

Nu tilføjer vi flere brugere til vores samling:

<?php $uc->add(new User('john')); $uc->add(new User('eric')); $uc->add(new User('kyle')); ?>

Og nu kalder vi metoden, som vil vise alle brugernes navne:

<?php $uc->show(); ?>

Lav klassen EmployeesCollection, som vil indeholde en array af medarbejdere.

Lav en metode i denne klasse til at tilføje en ny medarbejder.

Lav en metode i denne klasse til at vise alle medarbejdere.

Lav en metode i denne klasse til at beregne den samlede løn for alle medarbejdere.

Lav en metode i denne klasse til at beregne den gennemsnitlige løn for alle medarbejdere.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis