Table des matières
细说php(七) 面向对象编程
Maison développement back-end tutoriel php 细说php(七) 面向对象编程_PHP教程

细说php(七) 面向对象编程_PHP教程

Jul 13, 2016 am 10:19 AM
对象

细说php(七) 面向对象编程

一、类的声明与对象初始化

1.1 在类中声明成员属性时: 前面必须有修饰词, 当不知道使用那个时, 就使用var, 如果知道使用那一个修饰关键字, 就不使用var了

var $color;

var $name = "zhangsan"


1.2 一个文件只保存一个类, 文件名中包含类名, 如:类名.class.php

person.class.php


1.3 使用new关键字来创建对象, 创建了一个对象就在内存中分配一个空间 $对象引用 = new 类名;

$person = new Person

<?php
	class Person {
		var $name;      // Java: private String name;
		var $age;
		var $sex;
	
		function say() {
			echo $this->name;
		}
	}
	
	$p1 = new Person;   // Java: Person person = new Person;
	$p1->name = "lisi"; // Java: person.name = "lisi";
	$p1->say();         // Java: person.say();
?>
Copier après la connexion
1.4 对象在内存中的分配

a. 栈内存: 存放局部变量

b. 堆内存: 存放对象

c. 共享区: 存放静态变量

d. 代码段: 存放方法等


二、构造函数和析构函数

2.1 构造函数:

a. 构造方法是对象创建完成之后, 第一个自动调用的方法

b. 在PHP4中, 和类同名的方法就是构造方法

c. 在PHP5中, 构造方法选择使用魔术方法 __construct() , 所有类中声明构造方法都使用这个名称

优点: 在改变类名时构造方法不用改变

d. 构造方法的作用: 为成员属性初始化

<?php
	class Person {
		var $name;
		var $age;
		var $sex;
	
		function __construct($name="", $age=0, $sex="男"){
			$this->name=$name;
			$this->age=$age;
			$this->sex=$sex;
		}
	
		function say(){
			echo "我的名子:{$this->name},我的年龄:{$this->age},我的性别:{$this->sex}。<br>";
		}
	}
	
	$p1=new Person("zhangsan", 20, "女");
	$p2=new Person("lisi", 25);
	$p3=new Person("wangwu");
	
	$p1->say();
	$p2->say();
	$p3->say();
?>
Copier après la connexion

2.2 析构函数:

a. 析构函数是指当对象被释放之前最后一个自动调用的方法

b. 和Java一样, PHP也使用垃圾回收器释放资源, 只不过PHP调用后马上回收, 而Java不是.

c. 析构函数的作用: 关闭一些资源, 做一些清理工作, 使用魔术方法 __destruct()

<?php
	class Person {
		var $name;
		var $age;
		var $sex;
	
		function __construct($name="", $age=0, $sex="男"){
			$this->name=$name;
			$this->age=$age;
			$this->sex=$sex;
		}
	
		function say(){
			echo "我的名子:{$this->name},我的年龄:{$this->age},我的性别:{$this->sex}。<br>";
		}
		
		function __destruct(){
			echo $this->name."再见!<br>";
		}
	}
	
	$p1=new Person("zhangsan", 20, "女");
	$p1->say();
	$p1 = null;
	
	// 我的名子:zhangsan,我的年龄:20,我的性别:女。
    // zhangsan再见!
?>
Copier après la connexion


2.3 魔术方法

魔术方法是系统给我们提供好的, 在不同时刻为完成某一功能而自动调用的方法, 不同的魔术方法有不同的调用时机

魔术方法以 __ 开头

__construct(); // 构造函数
__destruct(); // 析构函数
__set();
__get();
__isset();
__unset();
__clone();
__call();
__sleep();
__weakup();
__toString()
__autoload();

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/871200.htmlTechArticle细说php(七) 面向对象编程 一、类的声明与对象初始化 1.1 在类中声明成员属性时: 前面必须有修饰词, 当不知道使用那个时, 就使用var, 如果...
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Convertissez un tableau ou un objet en chaîne JSON à l'aide de la fonction json_encode() de PHP Convertissez un tableau ou un objet en chaîne JSON à l'aide de la fonction json_encode() de PHP Nov 03, 2023 pm 03:30 PM

JSON (JavaScriptObjectNotation) est un format d'échange de données léger qui est devenu un format courant pour l'échange de données entre applications Web. La fonction json_encode() de PHP peut convertir un tableau ou un objet en chaîne JSON. Cet article explique comment utiliser la fonction json_encode() de PHP, y compris la syntaxe, les paramètres, les valeurs de retour et des exemples spécifiques. Syntaxe La syntaxe de la fonction json_encode() est la suivante : st

Exploration du code source : Comment les objets sont-ils appelés en Python ? Exploration du code source : Comment les objets sont-ils appelés en Python ? May 11, 2023 am 11:46 AM

Wedge Nous savons que les objets sont créés de deux manières principales, l'une via Python/CAPI et l'autre en appelant un objet de type. Pour les objets d'instance de types intégrés, les deux méthodes sont prises en charge. Par exemple, les listes peuvent être créées via [] ou list(). La première est Python/CAPI et la seconde est un objet de type appelant. Mais par exemple les objets de classes personnalisées, nous ne pouvons les créer qu'en appelant des objets de type. Si un objet peut être appelé, alors l'objet est appelable, sinon il ne l'est pas. Déterminer si un objet est appelable dépend du fait qu'une méthode est définie dans son objet de type correspondant. comme

Comment convertir le tableau de résultats d'une requête MySQL en objet ? Comment convertir le tableau de résultats d'une requête MySQL en objet ? Apr 29, 2024 pm 01:09 PM

Voici comment convertir un tableau de résultats de requête MySQL en objet : Créez un tableau d'objets vide. Parcourez le tableau résultant et créez un nouvel objet pour chaque ligne. Utilisez une boucle foreach pour attribuer les paires clé-valeur de chaque ligne aux propriétés correspondantes du nouvel objet. Ajoute un nouvel objet au tableau d'objets. Fermez la connexion à la base de données.

Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet Aug 22, 2023 pm 04:23 PM

Utilisez la fonction __contains__() de Python pour définir l'opération de confinement d'un objet. Python est un langage de programmation concis et puissant qui fournit de nombreuses fonctionnalités puissantes pour gérer différents types de données. L'un d'eux consiste à implémenter l'opération de confinement des objets en définissant la fonction __contains__(). Cet article explique comment utiliser la fonction __contains__() pour définir l'opération de confinement d'un objet et donne un exemple de code. La fonction __contains__() est Python

Quelle est la différence entre les tableaux et les objets en PHP ? Quelle est la différence entre les tableaux et les objets en PHP ? Apr 29, 2024 pm 02:39 PM

En PHP, un tableau est une séquence ordonnée et les éléments sont accessibles par index ; un objet est une entité avec des propriétés et des méthodes, créée via le mot-clé new. L'accès au tableau se fait via l'index, l'accès aux objets se fait via les propriétés/méthodes. Les valeurs du tableau sont transmises et les références d'objet sont transmises.

Utilisez la fonction __le__() de Python pour définir une comparaison inférieure ou égale de deux objets Utilisez la fonction __le__() de Python pour définir une comparaison inférieure ou égale de deux objets Aug 21, 2023 pm 09:29 PM

Titre : Utilisation de la fonction __le__() de Python pour définir une comparaison inférieure ou égale de deux objets En Python, nous pouvons définir des opérations de comparaison entre des objets en utilisant des méthodes spéciales. L'une d'elles est la fonction __le__(), qui est utilisée pour définir des comparaisons inférieures ou égales. La fonction __le__() est une méthode magique en Python et est une fonction spéciale utilisée pour implémenter l'opération « inférieur ou égal ». Lorsque nous comparons deux objets en utilisant l'opérateur inférieur ou égal (&lt;=), Python

Qu'est-ce que l'objet Request en PHP ? Qu'est-ce que l'objet Request en PHP ? Feb 27, 2024 pm 09:06 PM

L'objet Request en PHP est un objet utilisé pour gérer les requêtes HTTP envoyées par le client au serveur. Grâce à l'objet Request, nous pouvons obtenir les informations de demande du client, telles que la méthode de demande, les informations d'en-tête de demande, les paramètres de demande, etc., afin de traiter et de répondre à la demande. En PHP, vous pouvez utiliser des variables globales telles que $_REQUEST, $_GET, $_POST, etc. pour obtenir les informations demandées, mais ces variables ne sont pas des objets, mais des tableaux. Afin de traiter les informations demandées de manière plus flexible et plus pratique, vous pouvez

Explication détaillée de 5 méthodes de parcours de boucle d'objets Javascript Explication détaillée de 5 méthodes de parcours de boucle d'objets Javascript Aug 04, 2022 pm 05:28 PM

Comment parcourir des objets Javascript ? L'article suivant présentera en détail cinq méthodes de traversée d'objets JS et comparera brièvement ces cinq méthodes. J'espère qu'il vous sera utile !

See all articles