⊗ppOpMgTS 87 of 107 menu

Metoda Magjike toString në OOP në PHP

Metoda e parë magjike që do të studiojmë quhet __toString. Ajo thirret kur përpiqemi të kthejmë një shembull të klasës në varg. Le të kuptojmë se çfarë do të thotë kjo. Le të themi se kemi klasën e mëposhtme User:

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

Le të krijojmë një objekt të kësaj klase:

<?php $user = new User('john', 25); ?>

Tani le të përpiqemi të shfaqim objektin e krijuar përmes echo:

<?php $user = new User('john', 25); echo $user; ?>

Përpjekja për të shfaqur një objekt përmes echo është një konvertim në varg. Në këtë rast, PHP do të shfaqë një gabim, sepse objektet nuk mund të konvertohen në varg kaq thjesht.

Për të eliminuar gabimin, ne duhet t'i tregojmë PHP-së në mënyrë të qartë se çfarë të bëjë kur përpiqet të konvertojë një objekt në varg. Për këtë qëllim ekziston metoda magjike __toString.

Nëse krijojmë një metodë të tillë në kodin e klasës sonë, atëherë rezultati i kësaj metode (pra ajo që kthehet nga return) do të jetë paraqitja e objektit si varg.

Le të themi se duam që kur përpiqemi të shfaqim objektin përmes echo, të shfaqet emri i përdoruesit. Kështu që le të krijojmë metodën __toString dhe të kthejmë në të vlerën e vetive name:

<?php class User { private $name; private $age; public function __construct($name, $age) { $this->name = $name; $this->age = $age; } // Implementojmë metodën e specifikuar: public function __toString() { return $this->name; } public function getName() { return $this->name; } public function getAge() { return $this->age; } } ?>

Le të kontrollojmë:

<?php $user = new User('john', 25); echo $user; // do të shfaqë 'john' - gjithçka funksionon! ?>

Krijo një klasë User, në të cilën do të ketë vetitë name dhe surn. Bëni që kur shfaqet objekti përmes echo në ekran të shfaqet një varg me emrin dhe mbiemrin e përdoruesit.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo