}] ."/> }] .">

Maison  >  Article  >  développement back-end  >  Comment appeler des variables non statiques dans les méthodes statiques PHP

Comment appeler des variables non statiques dans les méthodes statiques PHP

coldplay.xixi
coldplay.xixioriginal
2020-10-07 14:51:423000parcourir

Comment appeler des variables non statiques à partir de méthodes statiques en PHP : Instanciez d'abord l'objet dans la méthode statique de la classe ; puis appelez la méthode dans la classe, le code est [public function testCallStaticFun(){echo "call static function }].

Comment appeler des variables non statiques dans les méthodes statiques PHP

La méthode statique appelle une variable non statique en php :

Appels de méthode statique méthode non statique : Dans la méthode statique de la classe, vous devez instancier l'objet puis appeler la méthode dans la classe

La méthode non statique appelle la méthode statique : Vous pouvez appeler self sous la forme de :: ou le nom de la classe plus

Par exemple, le cas suivant :

<?php
class A{
    public function noneStaticFun(){
        echo  __CLASS__." none static function<br/>";
    }
    public static function staticFun(){
        echo __CLASS__." static function<br/>";
        //静态方法调用非静态方法,需要实例化对象然后再调用对象中的非静态方法
        (new A())->noneStaticFun();
    }
    public function testCallStaticFun(){
        echo "call static function<br/>";
        //调用本类的静态方法,使用 self关键字或者类名
        self::staticFun();
        //A::staticFun(); //也可以使用这种方式
        //调用其它类的静态方法,直接使用类名::方法名的形式调用
        B::myStaticFun();
    }
}
class B{
    public static function myStaticFun(){
        echo __CLASS__." static function<br/>";
    }
}
//演示
$testA = new A();
$testA->testCallStaticFun();
A::staticFun();

Résultats en cours :

call static function
A static function
A none static function
B static function
A static function
A none static function

Recommandations d'apprentissage gratuites associées : programmation php (vidéo)

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