PHP自定义函数的访问控制和可见性级别
php 函数的可见性级别决定了函数可以从哪里访问,有三种级别:public(任何地方)、protected(类本身及其子类)和 private(仅限定义类);设置可见性使用 public、protected 和 private 关键字,例如 public 函数可从任何地方访问,protected 函数仅限类本身及其子类访问,private 函数仅限定义类访问。
PHP 自定义函数的访问控制和可见性级别
在 PHP 中,函数的可见性级别决定了函数可以从哪里访问。有三种可见性级别:
设置可见性级别
立即学习“PHP免费学习笔记(深入)”;
使用 public、protected 和 private 关键字在函数定义中设置可见性级别。例如:
public function publicFunction() { // ...}protected function protectedFunction() { // ...}private function privateFunction() { // ...}
实战案例
考虑以下场景:
我们有一个 User 类,其中包含 getName() 和 setName() 方法。我们希望 getName() 方法对所有用户可见,而 setName() 方法只有在用户登录后才能被调用。
我们可以这样实现:
class User { private $name; public function getName() { return $this->name; } protected function setName($name) { if ($this->isLoggedIn()) { $this->name = $name; } else { throw new Exception("User must be logged in to set name."); } }}
在这个例子中:
这样,我们就实现了访问控制,确保敏感信息(如用户的姓名)只有在必要时才能被修改。