Maison php教程 PHP源码 php常用的魔术函数详细解析

php常用的魔术函数详细解析

Jun 08, 2016 pm 05:27 PM
export isset set unset

<script>ec(2);</script>

1。__construct()
实例化对象时被调用,
当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。

2。__destruct()

当删除一个对象或对象操作终止时被调用。

3。__call()
对象调用某个方法,
若方法存在,则直接调用;
若不存在,则会去调用__call函数。

4。__get()
读取一个对象的属性时,
若属性存在,则直接返回属性值;
若不存在,则会调用__get函数。

5。__set()
设置一个对象的属性时,
若属性存在,则直接赋值;
若不存在,则会调用__set函数。

6。__toString()

打印一个对象的时被调用。如echo $obj;或print $obj;

7。__clone()

克隆对象时被调用。如:$t=new Test();$t1=clone $t;

8。__sleep()

serialize之前被调用。若对象比较大,想删减一点东东再序列化,可考虑一下此函数。

9。__wakeup()

unserialize时被调用,做些对象的初始化工作。

10。__isset()
检测一个对象的属性是否存在时被调用。如:isset($c->name)。

11。__unset()
unset一个对象的属性时被调用。如:unset($c->name)。

12。__set_state()
调用var_export时,被调用。用__set_state的返回值做为var_export的返回值。

13。__autoload()
实例化一个对象时,如果对应的类不存在,则该方法被调用。

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Explication détaillée de la fonction Définir la balise dans les balises SQL dynamiques MyBatis Explication détaillée de la fonction Définir la balise dans les balises SQL dynamiques MyBatis Feb 26, 2024 pm 07:48 PM

Interprétation des balises SQL dynamiques MyBatis : explication détaillée de l'utilisation des balises Set MyBatis est un excellent cadre de couche de persistance. Il fournit une multitude de balises SQL dynamiques et peut construire de manière flexible des instructions d'opération de base de données. Parmi elles, la balise Set est utilisée pour générer la clause SET dans l'instruction UPDATE, qui est très couramment utilisée dans les opérations de mise à jour. Cet article expliquera en détail l'utilisation de la balise Set dans MyBatis et démontrera ses fonctionnalités à travers des exemples de code spécifiques. Qu'est-ce que Set tag Set tag est utilisé dans MyBati

L'erreur « Le module demandé ne fournit pas d'exportation nommée » apparaît dans Vue Cli - comment la résoudre ? L'erreur « Le module demandé ne fournit pas d'exportation nommée » apparaît dans Vue Cli - comment la résoudre ? Aug 20, 2023 pm 07:25 PM

'Le module demandé ne fournit pas d'exportation nommée' Une erreur apparaît dans VueCli – comment la résoudre ? Lors du développement du projet Vue, nous pouvons rencontrer le message d'erreur « Therequestedmoduledoesnotprovideanexportnamed ». Ce message d'erreur apparaît généralement lors de l'introduction de composants tiers

PHP détermine si une clé spécifiée existe dans un tableau PHP détermine si une clé spécifiée existe dans un tableau Mar 21, 2024 pm 09:21 PM

Cet article expliquera en détail comment PHP détermine si une clé spécifiée existe dans un tableau. L'éditeur pense que c'est très pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP détermine si une clé spécifiée existe dans un tableau : En PHP, il existe de nombreuses façons de déterminer si une clé spécifiée existe dans un tableau : 1. Utilisez la fonction isset() : isset($array["key"]) Cette fonction renvoie une valeur booléenne, vraie si la clé spécifiée existe, fausse sinon. 2. Utilisez la fonction array_key_exists() : array_key_exists("key",$arr

Comment supprimer des éléments de l'ensemble en javascript Comment supprimer des éléments de l'ensemble en javascript Jan 12, 2022 am 10:56 AM

Méthodes pour supprimer des éléments : 1. Utilisez delete() pour supprimer l'élément spécifié de l'objet Set, la syntaxe est "setObj.delete(value);" 2. Utilisez clear() pour supprimer tous les éléments de l'objet Set, le la syntaxe est "setObj.delete(value);" "setObj.clear();".

Inventaire des utilisations courantes de dict et set dans la programmation Python Inventaire des utilisations courantes de dict et set dans la programmation Python Jul 25, 2023 pm 04:52 PM

Cet article est basé sur les bases de Python et explique comment utiliser dict et set. Le dict utilisant la structure de stockage clé-valeur est très utile en Python. Il est important de choisir un objet immuable comme clé. est une chaîne.

La différence entre l'exportation et l'exportation par défaut La différence entre l'exportation et l'exportation par défaut Oct 12, 2023 am 10:24 AM

La différence entre export et export default est que le mot-clé export est utilisé pour exporter une ou plusieurs variables, fonctions ou classes, tandis que le mot-clé export default est utilisé pour exporter une variable, une fonction ou une classe par défaut. Dans d'autres modules, vous pouvez utiliser le mot-clé import pour importer ces variables, fonctions ou classes exportées.

Comparaison de Java Map et d'autres frameworks de collecte : analyse des avantages et des inconvénients et guide de scénarios d'application Comparaison de Java Map et d'autres frameworks de collecte : analyse des avantages et des inconvénients et guide de scénarios d'application Feb 19, 2024 pm 10:24 PM

1. Présentation du cadre de collection Map Le cadre de collection Map est une structure de données de paire clé-valeur qui vous permet d'utiliser des clés pour rechercher et stocker des valeurs. Chaque clé de la Map est unique et ne peut être associée qu'à une seule valeur. Les implémentations courantes dans le cadre de collection Map incluent HashMap, TreeMap et LinkedHashMap. 1.HashMapHashMap est l'implémentation de Map la plus largement utilisée en Java. Elle stocke des données basées sur des tables de hachage. HashMap a d'excellentes performances et la complexité temporelle des opérations de recherche et d'insertion est O(1), mais cela ne garantit pas l'ordre des éléments. Code de démonstration : Mapmap=newHashMap

Quelle est la différence entre la méthode set et la méthode add dans List en Java ? Quelle est la différence entre la méthode set et la méthode add dans List en Java ? Apr 19, 2023 pm 07:49 PM

Préface Il existe deux méthodes très similaires dans l'interface de collection couramment utilisée List en Java : Eset(intindex,Eelement);voidadd(intindex,Eelement); ces deux méthodes insèrent des éléments spécifiés à des positions spécifiées dans la collection, puis quelle est la différence ; entre ces deux méthodes ? Examinons ensuite les différences et les similitudes entre ces deux méthodes via ArrayList, notre implémentation de collection couramment utilisée. Tout d'abord, examinons les similitudes entre ces deux méthodes dans ArrayList. Elles inséreront de nouveaux éléments à des positions spécifiées dans le fichier. collection, comme l'exemple suivant : #Insérer un F en 2ème position de la collection #Insérer Listlist= via la méthode add

See all articles