⊗ppOpAdNOC 21 of 107 menu

Operador de navegação segura em cadeias em POO em PHP

O operador de navegação segura ?-> pode ser aplicado em cadeias de chamadas. Vamos ver um exemplo. Suponha que temos as seguintes classes:

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

Suponha que queremos obter a cidade do usuário através da cadeia:

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

Caso a cidade seja null, chamar essa cadeia resultará em um erro:

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

Para suprimir o erro, podemos usar o operador de navegação segura:

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

Suponha que agora a cidade também possa ser null. Neste caso, podemos usar o operador de navegação segura duas vezes:

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

Melhore o seguinte código usando o operador de navegação segura:

<?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(); ?>
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar