Maison > développement back-end > tutoriel php > Classes orientées objet PHP et objets instanciés

Classes orientées objet PHP et objets instanciés

不言
Libérer: 2023-03-29 22:00:01
original
1897 Les gens l'ont consulté

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

Classe

<.>
Déclaration

[修饰符] class 类名
{
    [属性]
    [方法]
}
Copier après la connexion
Notes :

1) Les noms de classe suivent la spécification de dénomination des cas de chameaux

commençant par 大写

2) Les balises d'ouverture et de fermeture des accolades doivent être sur une ligne seules

Modificateurs

private     私有

protected   保护

public      公共    

var         被视为public  (不建议使用)
Copier après la connexion
Autorisations d'accès

Classes orientées objet PHP et objets instanciés Instancier

Utilisez le nouveau mot-clé pour instancier.

Les supports ne sont pas obligatoires.

Exemple

// 1.声明类
class Dog
{
    // 2.定义属性
    public $name = &#39;旺财&#39;;
    public $sex = null;


    // 3.定义方法
    public function bark()
    {
        echo &#39;汪汪~&#39;;
    }
}

// 4.实例化
$d1 = new Dog();
Copier après la connexion
Objet instancié

Appel d'attributs et de méthodes

Utilisez

pour accéder aux propriétés méthodes |

->

Exemple

Appel interne
// 声明类
class Dog
{
    // 定义属性
    public $name = &#39;旺财&#39;;
    public $sex = null;


    // 定义方法
    public function bark()
    {
        echo &#39;汪汪~&#39;;
    }
}

// 实例化
$d1 = new Dog();

// 使用属性和方法
echo $d1 -> name;
echo &#39;<br/>&#39;;
echo $d1 -> bark();
Copier après la connexion

Lorsqu'une méthode est appelée à l'intérieur d'une définition de classe, vous pouvez utiliser des pseudo variables

.

$this

représente l'objet utilisé.

$this

Exemple :

Affectation transitive
// 声明类
class Dog
{
    // 定义属性
    public $name = &#39;旺财&#39;;
    public $sex = null;

    public function intruduce()
    {
        echo &#39;我的名字是&#39;.$this->name;
    }
}
Copier après la connexion

1) Lorsque

type simple

, les deux côtés de l'affectation sont transmis , . 相互独立2) Lorsque

est un type composite

, l'affectation passée stocke l'identifiant de l' objet , donc . 变化一致

Exemple de type simple :

$a = &#39;abc&#39;;

// 传递赋值
$b = $a;

// 更改a的值
$a = &#39;qq&#39;;

var_dump($a);   // qq
var_dump($b);   // abc
Copier après la connexion
Exemple de type composite :

Affectation de référence
class MyClass
{
    public $str = &#39;abc&#39;;
}

// $a 存的是对象的标识符
$a = new MyClass();

// 传递赋值  相当于把标识符赋值给了$b
$b = $a;

var_dump($a);    // abc
var_dump($b);    // abc

// 更改a对象str属性的值
$a -> str =&#39;111&#39;;

// $a和$b存的都是标识符
var_dump($a);    // 111
var_dump($b);    // 111


// 更改a本身的值
$a = 123;

var_dump($a);    // 123
var_dump($b);    // 111   对象标识符
Copier après la connexion

Qu'il s'agisse d'un type simple ou d'un type cohérent, les deux côtés ont les mêmes changements.

Exemple :

Recommandations associées :
$a = &#39;abc&#39;;

// 引用赋值
$c = &$a;

var_dump($a);   // qq
var_dump($c);   // qq
Copier après la connexion

Concepts de base du php orienté objet

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!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal