PHP 中的 Getter 和 Setter 方法是什麼?


在這篇文章中,我們將學習在 PHP 中建立 getter 和 setter 方法的最佳實踐。當我們需要限制終端使用者對變數的直接訪問時,就會使用 getter 和 setter 方法。Getter 和 Setter 是用於定義或檢索變數值(通常是私有變數)的方法。

顧名思義,getter 方法是一種獲取或檢索物件值的技術。同樣,setter 方法是一種設定物件值的技術。

示例

讓我們透過一個例子來了解 getter 和 setter 方法的用法。

<?php
   class Person{
      private $name;
      public function setName($name){
         $this->name = $name;
      }
      public function getName(){
         return $this->name;
      }
   }
   $person = new Person();
   echo $person->name;
?>

輸出

PHP Error Cannot access private property Person::$name

解釋

在我們上面的 Person 類中,我們有一個名為 $name 的私有屬性。由於它是私有屬性,因此我們無法像上面那樣直接訪問它們,這將導致致命錯誤。

示例

要執行上面的程式碼並獲得我們期望的輸出,讓我們測試這個例子。

<?php
   class Person{
      private $name;
      public function setName($name){
         $this->name = $name;
      }
      public function getName(){
         return 'welocme'. $this->name;
      }
   }
   $person = new Person();
   $person->setName('Alex');
   $name = $person->getName();
   echo $name;
?>

輸出

welcomeAlex

解釋

在這裡,為了訪問我們的私有屬性,我們建立了一個名為 getData 的“getter”函式,同樣,由於屬性的可見性設定為私有,因此您也無法更改或修改它們的值。因此,您應該使用我們建立的“setter”函式之一:setName。之後,我們例項化了我們的 Person 物件。

我們使用 setter 方法 setData 將 $name 屬性“設定為”"Alex"。然後,我們使用 getter 函式 getData 檢索了 $name 屬性的值。

更新於: 2019-12-31

14K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.