⊗ppOpAdNOC 21 of 107 menu

Sikker henteoperator i kjeder i OOP i PHP

Sikker henteoperator ?-> kan brukes i kallkjeder. La oss se på et eksempel. La oss si at vi har følgende klasser:

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

La oss si at vi vil hente brukerens by via en kjede:

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

I tilfelle byen er null, vil et slikt kalle føre til en feil:

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

For å undertrykke feilen kan vi bruke den sikre henteoperatoren:

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

La oss si nå at både byen kan være null. I dette tilfellet kan vi bruke operatoren for sikker henting to ganger:

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

Forbedre følgende kode ved hjelp av operatoren for sikker henting:

<?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('utvikler'); $employee = new Employee('john', $position); echo $employee->position->getName(); ?>
Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis