public function和private function是面向对象编程中两种不同的访问修饰符,它们可以用于定义类的成员函数(方法)。
public function(公共函数):
class MyClass {
public function publicFunction() {
// ...
}
}
$myObj = new MyClass(); $myObj->publicFunction(); // 可以调用公共函数
private function(私有函数):
只能在定义该函数的类的内部被访问和调用。
其他类的实例对象无法直接调用私有函数。
私有函数通常用于实现类的内部细节,不对外部暴露,遵循封装的原则。
如果希望在类的外部调用私有函数,可以通过公共函数作为接口进行间接调用。
示例代码:
class MyClass {
private function privateFunction() {
// ...
}
public function publicFunction() {
// 调用私有函数
$this->privateFunction();
}
}
$myObj = new MyClass(); $myObj->publicFunction(); // 调用公共函数,间接调用了私有函数
总结: public function是对外公开的函数,可以在类的内外被访问和调用; private function是私有的函数,只能在定义该函数的类内部被访问和调用,其他类无法直接访问。