⊗ppOpAdNOC 21 of 107 menu

Turvalise väljavõtte operaator ahelates OOP-s PHP-s

Turvalise väljavõtte operaator ?-> saab rakendada kutsungeahelates. Vaatame näidet. Olgem meil järgmised klassid:

<?php class User { public $city = null; } class City { public function getName() { return 'city name'; } } ?>

Oletagem, et tahame saada kasutaja linna läbi ahela:

<?php $user = new User(); $user->city = new City(); echo $user->city->getName(); ?>

Juhul kui linn on võrdne null, siis sellise ahela kutsumine viib veani:

<?php $user = new User(); $user->city = null; echo $user->city->getName(); // viga ?>

Vea summutamiseks saame kasutada turvalise väljavõtte operaatorit:

<?php $user = new User(); $user->city = null; echo $user->city?->getName(); ?>

Oletagem nüüd, et ka linn võib olla null. Sellisel juhul saame kasutada operaatorit turvalist väljavõtet kaks korda:

<?php $user = null; echo $user?->city?->getName(); ?>

Parandage järgnevat koodi läbi turvalise väljavõtte operaatori:

<?php class Employee { public $name; public $position; public function __construct($name, $position) { $this->name = $name; $this->position = $position; } } class Position { private $name; public function __construct($name) { $this->name = $name; } public function getName() { return $this->name; } } $position = new Position('developer'); $employee = new Employee('john', $position); echo $employee->position->getName(); ?>
Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu