Maison  >  Article  >  développement back-end  >  Utilisation de mots-clés static et const en php

Utilisation de mots-clés static et const en php

墨辰丷
墨辰丷original
2018-05-29 17:08:511466parcourir

Cet article présente principalement l'utilisation des mots-clés static et const en php, et analyse les fonctions, l'utilisation et les précautions associées des mots-clés static et const sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

. Les détails sont les suivants :

Les propriétés membres et les fonctions membres décrites par le mot-clé static dans la classe sont toutes statiques.

Les membres statiques peuvent restreindre l'accès externe, car les membres statiques appartiennent à la classe, et non à une instance d'objet.

Du point de vue de la mémoire, l'objet est placé dans la « mémoire tas », la référence à l'objet est placée dans la « mémoire de pile » et les membres statiques sont placés dans le segment statique d'initialisation ajouté lors du chargement. Peut être partagé par tous les objets en mémoire. Comme le montre la figure ci-dessous :

<?php
class Person{
 public static $myCountry = "中国";
 public static function say(){
  echo "我的祖国是:".self::$myCountry."<br>";
 }
}
//输出静态属性
echo Person::$myCountry."<br>";
//调用静态方法
Person::say();
//修改静态属性
Person::$myCountry = "中国-江苏";
echo Person::$myCountry."<br>";
?>

Le résultat de sortie est :

中国
我的祖国是:中国
中国-江苏

Les méthodes statiques d'une classe ne peuvent accéder qu'aux propriétés statiques de la classe. Les méthodes statiques d'une classe ne peuvent pas accéder aux membres non statiques de la classe. Nous utilisons self pour accéder aux propriétés statiques d'une classe. self est similaire à ceci, sauf que self représente la classe où se trouve la méthode statique, et ceci est similaire, sauf que self représente la classe où se trouve la méthode statique, et cela fait référence à un pointeur, qui représente l'objet qui appelle cette méthode. Les méthodes statiques ne sont pas appelées avec des objets, il n'y a donc pas de référence. Il n’y a aucune référence à cela. Sans cela, il n'y a aucun moyen d'appeler d'autres propriétés membres de la classe.

const est un mot-clé qui définit des constantes. Const est souvent utilisé pour définir des constantes dans les classes. La méthode d'accès aux attributs des membres modifiés avec "const" est similaire à la méthode d'accès aux membres modifiés avec "static". Ils utilisent également le "nom de classe" et le mot-clé "self" dans la méthode. Mais vous n'avez pas besoin d'utiliser le symbole « $ » et vous ne pouvez pas utiliser d'objets pour y accéder.

<?php
class MyClass{
 const constant = &#39;constant value&#39;;
 function showConstant(){
  //方法中调用常量,没有$
  echo self::constant."<br>";
 }
}
//类直接调用,没有$
echo MyClass::constant."<br>";
$class = new MyClass();
$class ->showConstant();
?>

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.


Recommandations associées :

optimisation du code php

héritage multiple php Plusieurs méthodes

instructions de configuration de php-fpm.conf

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!

Déclaration:
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