⊗ppOpBsGSA 14 of 107 menu

PHPにおけるオブジェクト指向プログラミングにおけるセッターとゲッターの利点

前回のレッスンでは、各プロパティに対してゲッターとセッターを作成しました。 なぜこのような複雑な手順が必要なのか、疑問に思うかもしれません。 結局のところ、プロパティをプライベートではなくパブリックにすれば、同じ効果が得られるからです。

その理由は、ゲッターとセッターには利点があるからです:プロパティにアクセスする前に、いくつかのチェックを実行することができます。 たとえば、今回のケースでは、名前と姓を設定する際に、新しい値が空の文字列でないことを確認できます:

<?php class User { private $name; private $surn; public function setName($name) { if (strlen($name) > 0) { $this->name = $name; } else { echo 'name is incorrect'; } } public function setSurn($surn) { if (strlen($surn) > 0) { $this->surn = $surn; } else { echo 'surn is incorrect'; } } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

これがどのように機能するか、確認してみましょう。 まず、クラスのオブジェクトを作成します:

<?php $user = new User(); ?>

次に、正しい値を設定してみます:

<?php $user->setName('john'); ?>

そして今度は、不正な値を設定してみます:

<?php $user->setName(''); // エラー ?>

Employee クラスの年齢セッターで、 年齢が 0 から 120 の間であることを 確認するチェックを追加してください。

Employee クラスの給与ゲッターで、 給与を読み取る際に、その値の末尾に ドル記号が追加されるようにしてください。

日本語
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
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否