php 函数的可见性级别决定了函数可以从哪里访问,有三种级别:public(任何地方)、protected(类本身及其子类)和 private(仅限定义类);设置可见性使用 public、protected 和 private 关键字,例如 public 函数可从任何地方访问,protected 函数仅限类本身及其子类访问,private 函数仅限定义类访问。
PHP 自定义函数的访问控制和可见性级别
在 PHP 中,函数的可见性级别决定了函数可以从哪里访问。有三种可见性级别:
- public:函数可以从任何地方访问。
- protected:函数只能从类本身及其子类访问。
- private:函数只能从定义它的类中访问。
设置可见性级别
立即学习“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."); } } }
在这个例子中:
- getName() 方法是公共的,任何人都可以调用它。
- setName() 方法是受保护的,只能在 User 类及其子类中调用。
- isLoggedIn() 方法检查用户是否登录,这是一个私有方法,只能在 User 类中调用。
这样,我们就实现了访问控制,确保敏感信息(如用户的姓名)只有在必要时才能被修改。
以上就是PHP自定义函数的访问控制和可见性级别的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com