php call方法 即使用其實現方法過載

2021-06-25 07:02:59 字數 706 閱讀 6073

__call() 方法用於監視錯誤的方法呼叫。

為了避免當呼叫的方法不存在時產生錯誤,可以使用 __call() 方法來避免。該方法在呼叫的方法不存在時會自動呼叫,程式仍會繼續執行下去。

語法:

function __call(string $function_name, array $arguments)

該方法有兩個引數,第乙個引數 $function_name 會自動接收不存在的方法名,第二個 $args 則以陣列的方式接收不存在方法的多個引數。

在類裡面加入:

function __call($function_name, $args)

當呼叫乙個不存在的方法時(如 test() 方法):

$p1=new person();

$p1->test(2,"test");

輸出的結果如下:

你所呼叫的函式:test(引數:

array(2)

)不存在!

例項

<?php 

class a}}

function tt1($a)

function tt2($a,$b)

function tt3($a,$b,$ac)

}(new a)->tt("a");

echo "t" + 1;

?>

ARP原理及其實現方法

arp原理及其實現方法 在區域網中,是通過arp協議來完成ip位址轉換為第二層實體地址 即mac位址 的。arp協議對網路安全具有極其重要的意義。通過偽造ip位址和mac位址實現arp欺騙,能夠在網路中產生大量的arp通訊量使網路阻塞。arp協議是 address resolution protoc...

深入全排列演算法及其實現方法

全排列在很多程式都有應用,是乙個很常見的演算法,常規的演算法是一種遞迴的演算法,這種演算法的得到基於以下的分析思路。給定乙個具有n個元素的集合 n 1 要求輸出這個集合中元素的所有可能的排列。一 遞迴實現 例如,如果集合是,那麼這個集合中元素的所有排列是,顯然,給定n個元素共有n 種不同的排列,如果...

VB實現自我註冊控制項,即使使用控制項也能做綠色軟體

本文講解程式自動監測系統是不是有此控制項,如果沒有,則自動註冊此控制項。這樣就可以實現即使帶控制項也能實現做綠色軟體。vb程式設計中合理的使用第三方控制項,往往能夠事半功倍。但是使用第三方控制項也有不好的地方,那就是為了保證程式正常執行,必須使程式能夠在系統目錄或程式目錄下找到所用的第三方控制項。要...