Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP魔术方法之__call与__callStatic如何使用

PHP魔术方法之__call与__callStatic如何使用

墨辰丷
墨辰丷asal
2018-05-19 09:50:081637semak imbas

这篇文章主要介绍了PHP魔术方法之__call与__callStatic如何使用,需要的朋友可以参考下

核心代码


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


你想调用我不存在的方法t方法
还传了一个参数
Array ( [0] => 1 [1] => 2 [2] => 3 )

你想调用我不存在的方法say方法
还传了一个参数
Array ( [0] => a [1] => b [2] => c )

你想调用我不存在的run静态方法
还传了一个参数
Array ( [0] => d [1] => e [2] => f )

相关推荐:

php常用的魔术方法

【php类与对象】魔术方法

PHP常用魔术方法的性能探究

Atas ialah kandungan terperinci PHP魔术方法之__call与__callStatic如何使用. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn