Stu*_*ent 9 php messaging zend-framework
我正在研究PHP和Zend.我必须在应用程序中显示不同类型的错误/确认消息.大多数这些消息都放在代码中.因此,如果我必须更改一条消息,那么我必须在编码此特定类型的消息的任何地方更改它.
那么将所有消息存储到位并在整个应用程序中使用它们的最佳方法是什么.
可能的解决方案:
将所有消息存储在数据库中 (我们必须将这些消息移动到其他数据库类型.例如,如果我们从MySQL迁移到SQL Server.)
使用数组将所有消息存储在单独的php类中,并使用类方法获取这些消息(问题:我们不能在其他编程语言中使用此类.)
以特殊格式存储消息,可以接受所有语言,例如ini类型的文件.
编辑:( 看完Ozair的答案后)
有时我们必须更改特定记录的消息.例如:
Product No. 10 is deleted.
Product No. 15 is deleted.
Run Code Online (Sandbox Code Playgroud)
处理这种情况的最佳方法是什么?
谢谢
您可以在库文件夹中使用某种静态类.其中包含一组常量变量
PRODUCT_SAVED_OK = "The product {{id}} was saved successfully";
Run Code Online (Sandbox Code Playgroud)
我将有两个静态方法,负责显示错误/消息
public static function showMessage($message , $data = array("id" => "10"){
foreach($data as $key => $value){
$message = str_replace("{{" . $key . "}}", $value , $message);
}
echo $message;
}
public static function showError($error){
echo $error;
}
Run Code Online (Sandbox Code Playgroud)
在您需要显示消息的代码中,您只需调用静态类,如此...
Messages::showMessage(Messages::PRODUCT_SAVED_OK);
Run Code Online (Sandbox Code Playgroud)
这样,应用程序所需的所有消息都将包含在一个类中,如果需要,消息发生更改,您只需要更改此类.
你怎么看?