我有三个文本文件,其中包含三种语言的相同错误消息集:英语、法语和德语。
我需要扩展异常类,以便当出现问题时,会抛出自己的异常对象,例如“throw new My-Exception("English", 4) - 然后将显示英文文件中的第 4 条消息。
这是我到目前为止所做的:
<?php
class My_Exception extends Exception {
function __construct($lang, $errcode) {
$this->lang = $lang;
$this->errcode = $errcode;
}
function getMessageMap() {
$errors = file('errfiles/'.$this->lang.'.txt');
foreach($errors as $error) {
list($key,$value) = implode(',', $errors);
$errorArray[$key] = $value;
}
return $errorArray[$this->errcode];
}
}
try { throw new My_Exception('english', 3); }
catch (My_Exception $e) { echo $e->getMessageMap(); }
?>
这不能正常工作。我将不胜感激。