Maison > développement back-end > Problème PHP > Quelle est la différence entre les méthodes statiques php et les méthodes instanciées

Quelle est la différence entre les méthodes statiques php et les méthodes instanciées

WBOY
Libérer: 2023-03-15 15:52:01
original
2140 Les gens l'ont consulté

Différence : 1. Les méthodes statiques peuvent être appelées directement sans avoir besoin d'ouvrir de l'espace ni d'autres opérations, tandis que les méthodes d'instance doivent ouvrir de l'espace ; 2. Les méthodes statiques partagent un espace et les mêmes données, tandis que les méthodes d'instance ne partagent pas les mêmes. espace et données ; 3. , Les méthodes statiques ne prennent pas en charge l'écriture en chaîne, mais les méthodes d'instance prennent en charge l'écriture en chaîne.

Quelle est la différence entre les méthodes statiques php et les méthodes instanciées

L'environnement d'exploitation de cet article : système Windows 10, PHP version 7.1, ordinateur Dell G3.

Quelle est la différence entre les méthodes statiques PHP et les méthodes d'instanciation ?

Les méthodes statiques n'occupent qu'une copie de la mémoire et sont créées lorsque le code est chargé. Les méthodes ou classes d'instanciation ne sont créées que lorsqu'elles sont nouvelles. Chaque objet instancié représente une instance différente et il n'existe qu'une seule copie statique. Portez une attention particulière au fait que les méthodes statiques partagent des ressources en multi-threads.

Différences : 

1. L'appel de méthode statique ne nécessite pas de nouveau nom de classe :: nom de méthode.

Par exemple :

User::find();
Copier après la connexion

Remarque : les propriétés non statiques ne peuvent pas être appelées dans les méthodes statiques.

Les méthodes d'instance nécessitent de nouvelles.

Par exemple :

12$userObj = new User;$userObj->find();
Copier après la connexion

2. Il n'y a qu'une seule copie des méthodes statiques en mémoire et les ressources sont partagées au sein d'un cycle de vie PHP.

Remarque : les méthodes et propriétés statiques sont chargées au fur et à mesure que la classe est chargée, donc trop de méthodes statiques consommeront plus de mémoire.

Chaque fois qu'une méthode d'instance est nouvelle, un espace indépendant sera ouvert, c'est-à-dire qu'il y aura plusieurs copies dans la mémoire.

3. Performances des méthodes statiques : appel direct, pas besoin d'ouvrir de l'espace et d'autres opérations, meilleur en termes de temps et d'efficacité

Les méthodes d'instance nécessitent un certain temps pour ouvrir l'espace et les autres opérations

4. même copie des données, dans certains scénarios, il est plus approprié d'utiliser des méthodes statiques

Exemple de méthode Plusieurs instances ne partagent pas le même espace et les mêmes données

5 L'écriture de chaîne de méthodes statiques n'est pas prise en charge

Prise en charge de la méthode d'instance. Par exemple :

1$userObj->fields('uid')->where('uid>0')->find();
Copier après la connexion

Apprentissage recommandé : "Tutoriel vidéo PHP"

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