Introduction au contrôle d'accès PHP
1. Contrôle d'accès aux attributs
En PHP, les attributs de classe doivent être définis comme publics (l'un des trois : public, protégé ou privé. En PHP4, vous pouvez utiliser le mot-clé var pour définir des attributs qui ne sont pas publics par défaut. Les membres de la classe définis comme publics sont accessibles de n’importe où. Un membre de classe défini comme protégé est accessible par lui-même ainsi que par ses sous-classes et classes parentes. Les membres de classe définis comme privés ne sont accessibles que par la classe dans laquelle ils sont définis.
Si vous êtes intéressé par le mot-clé var, vous pouvez jeter un œil à http://stackoverflow.com/ques...
class Foo() { $name = "hello world" # 这么写是错误的。属性必须定义访问控制 }
Méthode de contrôle d'accès<🎜. >
De même, les méthodes d'une classe peuvent également être définies comme l'une des trois suivantes : publique, protégée ou privée. Mais s'il est public, le mot-clé public avant la méthode n'a pas besoin d'être écrit. Autrement dit, si vous n'écrivez pas les heures clés, la valeur par défaut est publique. Par exemple :class Bar() { function hello() # 此时该方法默认为公有 { print("hello"); } }
class Demo() { private function __construct() { print("I'm a private construct function"); } }
class Demo() { private function __construct() { print("I'm a private construct function"); } public static function getInstance() { return new Demo();#这是Demo类内部,可以用new Demo()实例化调用私有的__construct()方法 } } #在类外面,我们就可以这么玩了 Demo::getInstance();
class Demo() { private function __construct() { print("I'm a private construct function"); } # 先定义一个空成员装对象 public $_object = null; public static function getInstance() { if(empty(self::$_object)) { # 如果没有创建过,那么就new一个 return new Demo(); } #否则(即以及创建过),我们只要放回已经存在的那个即可 return $_object } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!