⊗ppOpAdNOC 21 of 107 menu

PHPにおけるOOPチェーン内の安全なナビゲーション演算子

安全なナビゲーション演算子 ?-> は、呼び出しチェーンの中で使用できます。 例を見てみましょう。 以下のクラスがあるとします:

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

ユーザーの都市名をチェーンで取得したいとします:

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

都市が null の場合、 このようなチェーンの呼び出しはエラーを引き起こします:

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

エラーを抑制するために、 安全なナビゲーション演算子を使用できます:

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

今度は、ユーザー自体も null になり得るとします。 この場合、安全なナビゲーション演算子を2回使用できます:

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

安全なナビゲーション演算子を使って、 以下のコードを改善してください:

<?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(); ?>
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否