有没有在PHP中定义公共类、私有类或受保护类


is there anyway to define public or private or protected classes in PHP

是否可以像java一样在命名空间中创建公共、私有或受保护的类?

就像。。。

namespace foo;
public class Account {
  .......
}

private class PrivateAccount {
 .......
}

请让我知道是否有任何解决办法在PHP中做到这一点。

不,PHP中的类可能不是公共的,而是隐式声明的。来自PHP5:中关于类的PHP文档

基本类定义以关键字class开头,后跟类名,后跟一对大括号,大括号包含属于该类的属性和方法的定义。

将可见性关键字放在类前面可能会导致致命错误。

通常,您要做的是将类的构造函数声明为private。然后,您可以在类中创建一个单独的静态函数,该函数将进行一些检查(即检查命名空间),并通过调用私有构造函数有条件地返回类的实例。这也是实现singleton的典型方式。