Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie die magischen PHP-Methoden __call und __callStatic

So verwenden Sie die magischen PHP-Methoden __call und __callStatic

墨辰丷
墨辰丷Original
2018-05-19 09:50:081637Durchsuche

In diesem Artikel wird hauptsächlich die Verwendung der magischen PHP-Methoden __call und __callStatic vorgestellt. Freunde, die sie benötigen, können sich auf den

Kerncode


//魔术方法__call 
/* 
$method 获得方法名 
$arg 获得方法的参数集合 
*/
class Human {
 private function t(){

 }

 public function __call($method,$arg){
  echo &#39;你想调用我不存在的方法&#39;,$method,&#39;方法<br/>&#39;; 
  echo &#39;还传了一个参数<br/>&#39;; 
  echo print_r($arg),&#39;<br/>&#39;; 
 }

 public static function __callStatic($method,$arg){
  echo &#39;你想调用我不存在的&#39;,$method,&#39;静态方法<br/>&#39;; 
  echo &#39;还传了一个参数<br/>&#39;; 
  echo print_r($arg),&#39;<br/>&#39;; 
 }
}


$ha = new Human();

//example1
$ha->t(1,2,3);

echo &#39;<br>&#39;;
//example2
$ha->say(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;);

echo &#39;<br>&#39;;
//example3
$ha::run(&#39;d&#39;,&#39;e&#39;,&#39;f&#39;);

beziehen

Sie möchten meine nicht existierende Methode t-Methode aufrufen
Auch ein Parameter übergeben
Array ( [0] => 1 [1] => 2 [2] = > 3)

Sie möchten meine nicht existierende Methode aufrufen, sagen wir Methode
Auch ein Parameter übergeben
Array ( [0] => a [1] => b [2 ] => c )

Sie möchten meine nicht vorhandene statische Ausführungsmethode aufrufen
Sie haben auch einen Parameter übergeben
Array ( [0] => d [1] => e [ 2] => f )

Verwandte Empfehlungen:

PHP häufig verwendete magische Methoden

[php-Klassen und -Objekte]Magische Methoden

Leistungsuntersuchung häufig verwendeter magischer Methoden in PHP

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die magischen PHP-Methoden __call und __callStatic. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn