Cet article présente principalement les classes orientées objet PHP et les objets instanciés. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
DéclarationClasse
<.>
[修饰符] class 类名 { [属性] [方法] }
commençant par 大写
private 私有 protected 保护 public 公共 var 被视为public (不建议使用)
Instancier
Les supports ne sont pas obligatoires.
Exemple
// 1.声明类 class Dog { // 2.定义属性 public $name = '旺财'; public $sex = null; // 3.定义方法 public function bark() { echo '汪汪~'; } } // 4.实例化 $d1 = new Dog();
Appel d'attributs et de méthodes
->
Appel interne
// 声明类 class Dog { // 定义属性 public $name = '旺财'; public $sex = null; // 定义方法 public function bark() { echo '汪汪~'; } } // 实例化 $d1 = new Dog(); // 使用属性和方法 echo $d1 -> name; echo '<br/>'; echo $d1 -> bark();
$this
$this
Affectation transitive
// 声明类 class Dog { // 定义属性 public $name = '旺财'; public $sex = null; public function intruduce() { echo '我的名字是'.$this->name; } }
, les deux côtés de l'affectation sont transmis , . 相互独立
2) Lorsque
, l'affectation passée stocke l'identifiant de l' objet , donc . 变化一致
$a = 'abc'; // 传递赋值 $b = $a; // 更改a的值 $a = 'qq'; var_dump($a); // qq var_dump($b); // abc
Affectation de référence
class MyClass { public $str = 'abc'; } // $a 存的是对象的标识符 $a = new MyClass(); // 传递赋值 相当于把标识符赋值给了$b $b = $a; var_dump($a); // abc var_dump($b); // abc // 更改a对象str属性的值 $a -> str ='111'; // $a和$b存的都是标识符 var_dump($a); // 111 var_dump($b); // 111 // 更改a本身的值 $a = 123; var_dump($a); // 123 var_dump($b); // 111 对象标识符
Recommandations associées :
$a = 'abc'; // 引用赋值 $c = &$a; var_dump($a); // qq var_dump($c); // qq
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!