Maison >développement back-end >tutoriel php >Comment utiliser les méthodes magiques PHP __call et __callStatic

Comment utiliser les méthodes magiques PHP __call et __callStatic

墨辰丷
墨辰丷original
2018-05-19 09:50:081735parcourir

Cet article présente principalement comment utiliser les méthodes magiques PHP __call et __callStatic. Les amis dans le besoin peuvent se référer au

code principal


//魔术方法__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;);

.

Vous souhaitez appeler ma méthode inexistante t méthode
a également passé un paramètre
Array ( [0] => 1 [1] => 2 [ 2] = > 3)

Vous souhaitez appeler ma méthode inexistante, par exemple méthode
A également transmis un paramètre
Array ( [0] => a [1] => b [2] => c )

Vous souhaitez appeler ma méthode statique d'exécution inexistante
Vous avez également passé un paramètre
Array ( [0] => d [1] => e [ 2] => f )

Recommandations associées :

PHP couramment utilisé méthodes magiques

[Classes et objets php]Méthodes magiques

Étude des performances des méthodes magiques couramment utilisées en 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!

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