⊗ppOpAdNOC 21 of 107 menu

Drošās izgūšanas operators ķēdēs OOP PHP

Drošās izgūšanas operators ?-> var tikt lietots izsaukumu ķēdēs. Apskatīsim to ar piemēru. Pieņemsim, ka mums ir šādas klases:

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

Pieņemsim, ka mēs vēlamies iegūt lietotāja pilsētu caur ķēdi:

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

Gadījumā, ja pilsēta ir vienāda ar null, tad šādas ķēdes izsaukums izraisīs kļūdu:

<?php $user = new User(); $user->city = null; echo $user->city->getName(); // kļūda ?>

Lai novērstu kļūdu, mēs varam izmantot drošās izgūšanas operatoru:

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

Pieņemsim, ka tagad arī pilsēta var būt null. Šajā gadījumā mēs varam izmantot drošās izgūšanas operatoru divas reizes:

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

Uzlabojiet šādu kodu, izmantojot drošās izgūšanas operatoru:

<?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('izstrādātājs'); $employee = new Employee('john', $position); echo $employee->position->getName(); ?>
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt