この記事では主に、特定の参照値を持つ PHP オブジェクト指向およびインスタンス化されたオブジェクトを紹介します。必要な友達はそれを参照できます
Class
[修饰符] class 类名 { [属性] [方法] }
1)クラス名は、uppercase
で始まるキャメルケースの命名仕様に従います大写
开头的驼峰命名规范
2)花括号的开始、结束标记,须自成一行.
private 私有 protected 保护 public 公共 var 被视为public (不建议使用)
使用new关键字,实例化。
括号可不加。
// 1.声明类 class Dog { // 2.定义属性 public $name = '旺财'; public $sex = null; // 3.定义方法 public function bark() { echo '汪汪~'; } } // 4.实例化 $d1 = new Dog();
实例化对象
使用 ->
,来访问非静态属性 | 方法。
例子
// 声明类 class Dog { // 定义属性 public $name = '旺财'; public $sex = null; // 定义方法 public function bark() { echo '汪汪~'; } } // 实例化 $d1 = new Dog(); // 使用属性和方法 echo $d1 -> name; echo '<br/>'; echo $d1 -> bark();
方法在类定义的内部被调用时,可以使用伪变量$this
。
$this
,就代表着正在使用的对象。
例子:
// 声明类 class Dog { // 定义属性 public $name = '旺财'; public $sex = null; public function intruduce() { echo '我的名字是'.$this->name; } }
1)简单类型时,传递赋值的双方,相互独立
。
2)复合类型时,传递赋值存的都是对象的标识符,所以变化一致
2) 中括弧の開始タグと終了タグは、単独の行になければなりません。修飾子
$a = 'abc'; // 传递赋值 $b = $a; // 更改a的值 $a = 'qq'; var_dump($a); // qq var_dump($b); // abc
アクセス権
新しいキーワードを使用してインスタンス化します。
ブラケットは必要ありません。 例
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 对象标识符
->
を使用します。 🎜🎜🎜例🎜🎜$a = 'abc'; // 引用赋值 $c = &$a; var_dump($a); // qq var_dump($c); // qq
$this
を使用できます。 🎜🎜$this
は、使用されているオブジェクトを表します。 🎜🎜🎜例: 🎜🎜rrreee🎜推移的代入🎜🎜1) 🎜単純型🎜の場合、転送代入の両側は互いに独立
します。 🎜🎜2) 🎜複合型🎜の場合、転送代入には🎜オブジェクト🎜の識別子が格納されるため、変更は一貫しています
。 🎜🎜🎜単純型の例: 🎜🎜rrreee🎜🎜複合型の例: 🎜🎜rrreee🎜参照割り当て🎜🎜 単純型であっても適合型であっても、変更は両側で一貫しています。 🎜🎜🎜例:🎜🎜rrreee🎜関連する推奨事項:🎜🎜🎜オブジェクト指向phpの基本概念🎜🎜🎜以上がPHP オブジェクト指向クラスとインスタンス化されたオブジェクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。