PHP 中的 getter 和 setter 方法是什么?

phpserver side programmingprogramming更新于 2025/10/8 20:22:17

在本文中,我们将学习在 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 属性的值。


相关文章