[英]“Wrong parameters for Exception” when creating Exception subclass
這是我的代碼
class MyException extends Exception
{
public function __construct($message, $code=0, Exception $previous = null) {
parent::__construct($message,$code,$previous);
}
public function __toString() {
return __CLASS__. ":[{$this->code}]:{$this->message}\n";
}
}
這是錯誤
Fatal error: Wrong parameters for Exception([string $exception [, long $code ]]) on line 5
在這條線上意味着
parent::__construct($message,$code,$previous);
出了什么問題?
如注釋中所述,在Exception構造函數頁面上 ,在PHP 5.3中添加了$previous
參數。
這反映在錯誤消息中:
異常的參數錯誤([string $ exception [,long $ code]])
PHP在確保構造函數完全匹配方面有點熱心。 例外是內部位的重要組成部分,讓它們完全正確是值得迂腐的。
此代碼演示顯示了較舊的PHP版本處理錯誤參數計數的各種方法。 從上面使用的措辭來看,您使用的是PHP 5.1或5.2。
請注意,在撰寫本文時(2014年2月), 5.4之前的PHP版本已達到安全和錯誤修復更新的生命周期,並且計划在2014年夏季為EOL安裝5.4。
如果可以,請確保在部署應用程序時使用的是現代版本的PHP。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.