workerman源码里用@抑制错误是否比set_error_handler()的空回调要简约一些?

搜了下workerman源代码,有很多处使用了 set_error_handler(); 来处理异常错误,但回调是空函数。

如以下代码:

set_error_handler(function(){});
fclose($this->_socket);
restore_error_handler();

感觉直接使用@抑制错误是否简洁些?

@fclose($this->_socket);
阅读 1.8k
2 个回答

@抑制的错误仍然会被set_error_handler设置的函数捕捉到。
开发者喜欢把workerman和其它框架整合一起,其它框架里一般会使用set_error_handler函数来捕捉错误,
导致workerman里虽然用@抑制了错误但是仍然被其它框架捕捉到。为了避免给开发者造成困扰,workerman里用set_error_handler摒弃一些可预见的warning

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏