PHP의 정적 메서드에서 비정적 메서드를 호출하는 방법: 먼저 개체를 인스턴스화한 다음 개체에서 비정적 메서드를 호출해야 합니다. 비정적 메서드에서 정적 메서드를 호출하는 방법: self 키워드나 [클래스 이름::메서드 이름] 형식을 사용하여 호출할 수 있습니다.
정적 메서드는 비정적 메서드를 호출합니다. 클래스의 정적 메서드에서는 개체를 인스턴스화한 다음 클래스의 메서드를 호출해야 합니다.
비정적 메서드 호출 정적 메서드: self 또는 클래스 이름 +:: 형식으로 호출할 수 있습니다.
(동영상 튜토리얼 추천: php 동영상 튜토리얼)
예:
<?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();
실행 결과:
call static function A static function A none static function B static function A static function A none static function
관련 추천: php training
위 내용은 PHP의 정적 메소드에서 비정적 메소드를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!