函數(shù)名稱:SensitiveParameterValue::__debugInfo()
適用版本:PHP 7.4.0 及以上版本
函數(shù)用法:該函數(shù)用于自定義對(duì)象的調(diào)試信息,當(dāng)使用 var_dump() 或 print_r() 函數(shù)打印對(duì)象時(shí),會(huì)自動(dòng)調(diào)用該函數(shù)來獲取對(duì)象的調(diào)試信息。
示例:
class SensitiveParameterValue
{
private $data = 'sensitive data';
public function __debugInfo()
{
return [
'data' => '***SENSITIVE***',
];
}
}
$obj = new SensitiveParameterValue();
var_dump($obj);
輸出結(jié)果:
object(SensitiveParameterValue)#1 (1) {
["data"]=>
string(15) "***SENSITIVE***"
}
在上面的示例中,我們定義了一個(gè)名為 SensitiveParameterValue
的類,并在該類中定義了 __debugInfo()
方法。該方法返回一個(gè)數(shù)組,其中包含了我們希望在調(diào)試時(shí)展示的信息。在本例中,我們將敏感數(shù)據(jù) "sensitive data" 替換為了 "SENSITIVE",以保護(hù)數(shù)據(jù)的安全性。當(dāng)我們使用 var_dump()
函數(shù)打印 $obj
對(duì)象時(shí),會(huì)自動(dòng)調(diào)用 __debugInfo()
方法,并將返回的調(diào)試信息打印出來。
注意:__debugInfo()
方法只能在自定義的類中使用,并且僅適用于 PHP 7.4.0 及以上版本。